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);
    }
相关推荐
爱吃大芒果8 小时前
GitCode口袋工具的部署运行教程
flutter·华为·harmonyos·gitcode
爱吃大芒果8 小时前
Flutter基础入门与核心能力构建——Widget、State与BuildContext核心解析
flutter·华为·harmonyos
灵感菇_10 小时前
Flutter Riverpod 完整教程:从入门到实战
前端·flutter·ui·状态管理
Zender Han12 小时前
Flutter Gradients 全面指南:原理、类型与实战使用
android·flutter·ios
火柴就是我12 小时前
Flutter Path.computeMetrics() 的使用注意点
android·flutter
等你等了那么久13 小时前
Flutter打包APK记录
flutter·dart
小a彤15 小时前
Flutter 与 Dart 语言的核心特性与应用
flutter
小a彤16 小时前
Flutter UI 美化与适配技巧详解
flutter·ui
5008416 小时前
鸿蒙 Flutter 原子化服务进阶:轻量应用开发、跨设备流转与上架适配
java·flutter·华为·性能优化
kirk_wang16 小时前
Flutter插件跨平台适配技术分析之是否需要适配鸿蒙端-screenshot
flutter·华为·harmonyos