flutter中键盘遮挡了webview_flutter中的输入框input解决办法

  1. iOS系统解决办法:(同时解决了闪屏问题,估计是iOS加入了IOKeyboardManager类库同时操作的问题)

参考flutter 中 键盘遮挡了webview_flutter中的输入框input 解决办法 - 简书

只需要将resizeToAvoidBottomInset设置为 false

Dart 复制代码
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      resizeToAvoidBottomInset: false,
      body: Builder(builder: (BuildContext context) {
        return WebView(
          initialUrl: 'https://www.baidu.com/',
        );
      }),
    );
  }
  1. Android系统解决办法:

获取键盘状态,滚动webview

Dart 复制代码
// 假设你需要滚动到特定的元素
                    _controller.evaluateJavascript('document.getElementById("inputElementId").scrollIntoView();');

我的处理方法更简单一点,针对特定的网页,直接滚动到一个固定的值,代码写在方法

复制代码
Widget build(BuildContext context) {...}里面
Dart 复制代码
    if(Platform.isAndroid&&widget.url.contains("common/User_feedback.html")&&MediaQuery.of(context).viewInsets.bottom>0) {
      Future.delayed(Duration(milliseconds: 100), () {
        _controller.scrollTo(0, 500);
      });
    }
相关推荐
爱吃大芒果3 小时前
GitCode口袋工具的部署运行教程
flutter·华为·harmonyos·gitcode
爱吃大芒果3 小时前
Flutter基础入门与核心能力构建——Widget、State与BuildContext核心解析
flutter·华为·harmonyos
灵感菇_5 小时前
Flutter Riverpod 完整教程:从入门到实战
前端·flutter·ui·状态管理
Zender Han7 小时前
Flutter Gradients 全面指南:原理、类型与实战使用
android·flutter·ios
火柴就是我7 小时前
Flutter Path.computeMetrics() 的使用注意点
android·flutter
等你等了那么久8 小时前
Flutter打包APK记录
flutter·dart
小a彤10 小时前
Flutter 与 Dart 语言的核心特性与应用
flutter
小a彤11 小时前
Flutter UI 美化与适配技巧详解
flutter·ui
5008411 小时前
鸿蒙 Flutter 原子化服务进阶:轻量应用开发、跨设备流转与上架适配
java·flutter·华为·性能优化
kirk_wang11 小时前
Flutter插件跨平台适配技术分析之是否需要适配鸿蒙端-screenshot
flutter·华为·harmonyos