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);
      });
    }
相关推荐
Zsnoin能8 小时前
flutter国际化、主题配置、视频播放器UI、扫码功能、水波纹问题
flutter
早起的年轻人9 小时前
Flutter CupertinoNavigationBar iOS 风格导航栏的组件
flutter·ios
HappyAcmen9 小时前
关于Flutter前端面试题及其答案解析
前端·flutter
coooliang18 小时前
Flutter 中的单例模式
javascript·flutter·单例模式
coooliang18 小时前
Flutter项目中设置安卓启动页
android·flutter
JIngles12318 小时前
flutter将utf-8编码的字节序列转换为中英文字符串
java·javascript·flutter
B.-21 小时前
在 Flutter 中实现文件读写
开发语言·学习·flutter·android studio·xcode
freflying11191 天前
使用jenkins构建Android+Flutter项目依赖自动升级带来兼容性问题及Jenkins构建速度慢问题解决
android·flutter·jenkins
机器瓦力1 天前
Flutter应用开发:对象存储管理图片
flutter
江上清风山间明月2 天前
Flutter最简单的路由管理方式Navigator
android·flutter·ios·路由·页面管理·navigator