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);
    }
相关推荐
火柴就是我11 小时前
学习一些常用的混合模式之BlendMode. SRC_ATOP
flutter
火柴就是我12 小时前
学习一些常用的混合模式之BlendMode.srcIn
flutter
恋猫de小郭13 小时前
罗技鼠标因为服务器证书过期无法使用?我是如何解决 SSL 证书问题
android·前端·flutter
程序员老刘13 小时前
ArkUI-X 6.0 跨平台框架能否取代 Flutter?
flutter·客户端·arkui
火柴就是我14 小时前
学习一些常用的混合模式之BlendMode.srcOut
flutter
yfmingo16 小时前
flutter 哪些任务是在微队列,哪些是在事件队列
flutter
kirk_wang17 小时前
Flutter环境搭建与项目创建详解
flutter·移动开发·跨平台
西西学代码19 小时前
Flutter---动画
flutter