Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: iOS手势侧滑返回,会将所有的Flutter页面关闭 #1983

Open
applebest opened this issue Mar 8, 2024 · 10 comments
Open

[Bug]: iOS手势侧滑返回,会将所有的Flutter页面关闭 #1983

applebest opened this issue Mar 8, 2024 · 10 comments

Comments

@applebest
Copy link

请描述遇到的问题,以及您所期望的正确的结果

flutter_boost:
git:
url: 'https://github.com/alibaba/flutter_boost.git'
ref: 'master'

原生Page---> flutter Page1 ---> flutter Page2 ---> flutter Page3

flutter Page3 手势侧滑----> 原生Page , 期望侧滑回到 flutter Page2 , flutter Page2 侧滑----> flutter Page1 侧滑 -----> 原生Page

请说明如何操作会遇到上述问题

No response

在下面填入关键复现代码

复现的平台

iOS

Flutter SDK版本

3.16.5

FlutterBoost版本

master分支

是否延迟初始化FlutterBoost

No

解决方案

@xinhc-yuanye
Copy link

我是侧滑返回失效

@xinhc-yuanye
Copy link

想问下 是不是ios 里 单vc 进入flutterA -> flutter b -> flutter c
因为你禁用了 原生侧滑 是不是 我在flutter里就没办法通过侧滑返回
flutter c -> flutter b ->flutter a

@xinhc-yuanye
Copy link

@applebest 有解决吗大神

@xinhc-yuanye
Copy link

还有个问题是 原生a -> flutter a - >flutter b ->原生b
原生b无法侧滑返回flutter b

@xinhc-yuanye
Copy link

@0xZOne 大神求指导

@applebest
Copy link
Author

@applebest

无解 ,除非禁用flutterController的手势返回

@applebest
Copy link
Author

@0xZOne

@Ten21One
Copy link

一个页面使用一个容器就好了

@applebest
Copy link
Author

一个页面使用一个容器就可以了

请教一下这个怎么搞,flutter_boost的demo里没有

@applebest
Copy link
Author

一个页面使用一个容器就可以了

请教一下这个怎么搞,flutter_boost的demo里没有

  Future<T> push<T extends Object?>(String name,
      {Map<String, dynamic>? arguments,
      bool withContainer = false,
      bool opaque = true}) {
    assert(
        appState != null, 'Please check if the engine has been initialized!');
    bool isFlutter = isFlutterPage(name);
    if (isFlutter && withContainer) {
      // 1. open flutter page with container
      // Intercepted in BoostFlutterRouterApi.pushRoute
      return appState!.pushWithResult(name,
          arguments: arguments, withContainer: withContainer, opaque: opaque);
    } else {
      // 2. open native page or flutter page without container
      return appState!.pushWithInterceptor(
          name, false /* isFromHost */, isFlutter,
          arguments: arguments, withContainer: withContainer, opaque: opaque);
    }
  }

withContainer 传入true 吗?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants