Flutter InAppWebView 路由导航处理

flutter InAppWebView路由导航处理,有以下两种处理方案:

  1. H5层控制路由,H5拥有自己的路由,当返回到跟路由root时,此时点击跟节点,通过jsbridge调用flutter提供的方法来关闭当前widget,flutter关闭方法如下:

    Dart 复制代码
    value.addJavaScriptHandler(
        handlerName: "closeInAppWebView",
        callback: (args) {
          //关闭当前widget  
          Navigator.pop(context);
        });
  2. flutter层控制路由,通过InAppWebViewController中canGoBack()判断是否可以返回,可以返回调用goBack(),否则关闭当前widget。代码如下:

    Dart 复制代码
    if (await inAppWebViewController!.canGoBack()) {
        //返回路由上一层
        inAppWebViewController!.goBack();
    } else {
        //关闭当前widget
        Navigator.pop(context);
    }
相关推荐
getapi7 小时前
flutter row里面怎么统一高度
flutter
观无7 小时前
pinia-plugin-persist、vuex
android·flutter
wayne4089 小时前
一文总结在不安装 Android Studio 的情况下在安卓手机上运行 Flutter 应用
flutter
阿笑带你学前端13 小时前
从0到1:我用Flutter造了个全平台IPTV神器,从此看直播不再"精神分裂"!
前端·flutter
getapi16 小时前
在 Flutter 中Navigator.push 用于实现页面之间的导航
flutter
bst@微胖子19 小时前
Flutter之交互事件
android·flutter·交互
FlutterDevs1 天前
Flutter 2025 年产品路线图发布
flutter
bst@微胖子1 天前
Flutter之设计与主题&字体
android·flutter
Tee xm1 天前
清晰易懂的 Flutter 开发环境搭建教程
linux·windows·flutter·macos·安装