键盘高度:MediaQuery.of(context).viewInsets.bottom (此高度只能在键盘唤醒时在build中获取,弹出键盘会执行build)

看代码:
iimport ‘package:flutter/cupertino.dart’;
import ‘package:flutter/material.dart’;

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: ‘Flutter Demo’,
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(title: ‘Flutter Demo Home Page’),
);
}
}

class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);

final String title;

@override
_MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State {
String hint = ‘请输入…’;

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.red,
centerTitle: true,
title: Text(‘appBar’),
),
body: Container(
color: Colors.green,
child: InkWell(
child: Center(
child: Text(
‘点击弹出框’,
style: TextStyle(color: Colors.white),
),
),
onTap: () {
showDialog(
barrierDismissible: true,
context: context,
builder: (BuildContext context) {
return Scaffold(
backgroundColor: Colors.transparent,
body: Container(
width: MediaQuery.of(context).size.width,
child: Stack(
children: [
Positioned(
child: CupertinoAlertDialog(
title: const Text(‘输入框’),
content:Container(
color: Colors.white,
child: CupertinoTextField(
placeholder: hint,
style: TextStyle(fontSize: 15, color: Colors.black),
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(2)),
),
maxLines: 5,
maxLength: 30,
maxLengthEnforced: true,
),
),
),
bottom: MediaQuery.of(context).viewInsets.bottom > 0 ? 0 : 300,//300换成键盘高度值效果更好
left: 0,
right: 0,
)
],
),
),
);
});
},
),
));
}
}

/*
class _MyHomePageState extends State {

@override
void initState() {
super.initState();
}

String str = ‘’;

@override
Widget build(BuildContext context) {
MediaQuery.of(context);
print(‘build~~~~~’);
return Scaffold(
appBar: AppBar(
centerTitle: true,
title: Text(‘appA的flutter’),
),
body: Center(
child: TextField(),
)

);

}
}*/
至于 ios风格组件国际化问题 请看之前的文章 告辞

flutter 弹出框键盘遮挡 获取键盘高度相关推荐

  1. 使用jsonp跨域调用百度js实现搜索框智能提示,并实现鼠标和键盘对弹出框里候选词的操作【附源码和在线测试地址】

    项目中常常用到搜索,特别是导航类的网站.自己做关键字搜索不太现实,直接调用百度的是最好的选择. 使用jquery.ajax的jsonp方法可以异域调用到百度的js并拿到返回值,当然$.getScrip ...

  2. 基于Selenium2+Java的UI自动化(6)-操作Alert、confirm、prompt弹出框

    alert.confirm.prompt这样的js对话框在selenium1 时代处理起来比价麻烦,常常要用autoit来帮助处理. 而现在webdriver对这些弹出框做了专门的处理,使用selen ...

  3. qt中调整弹出框的位置

    提要 在程序中点击按钮,有时在边缘弹出的弹出框,不能全部展示在用户的面前,弹出框显示的位置会超过程序的边界,从而看不到完整的弹出框,这时可以菜取设置弹出框可以按下鼠标拖动来使其不被遮住,或者在弹出框谈 ...

  4. swal如何加入html语言,前端基础(九):SweetAlert(弹出框)

    简介 SweetAlert是一款很好用的弹出框框架 下载 导入 博主用的是bootstrap-sweetalert,所以要依赖bootstrap,导入前先导入原生jQuery以及bootstrap 基 ...

  5. android实现底部弹出框与软键盘冲突(全面屏虚拟键适配)

    普通的底部弹出框大家都可以很熟练的使用了,无非是一个diaolog的事情,但是当dialog中含有输入框之后,软键盘与dialog的冲突可以说是十分坑了...更别说加上底部虚拟键了,这么一个小功能磨得 ...

  6. Flutter 弹出键盘报错解决

    Flutter 弹出键盘报错解决 错误原因 报错页面: 错误原因: 当一个页面的内容不能全部展示出来时,就会出现这种错误.其实这里如果没有键盘弹出,内容长度超过屏幕可显示范围,同样会报错. 解决方法 ...

  7. flutter APP中禁止软键盘弹出,监听硬键盘输入方法

    flutter App中禁止软键盘弹出,监听硬键盘输入的方法 之前的工作中遇到一个需求,想点击输入框后不弹出软键盘,使用设备硬键盘输入,解决方法:设置输入框只读并且显示光标,然后配置键盘监听就可以了. ...

  8. 使用popwindow制作弹出框与获得焦点弹出软键盘

    如果是声明一各类 public class VideoFilterDialog extends PopupWindow 那么在构造方法中添加: conentView = inflater.inflat ...

  9. firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作

    firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作 参考文章: (1)firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作 (2)https://www.cnblogs.com/ ...

最新文章

  1. python 线程池
  2. 七月在线python数据分析_七月在线Python基础+数据分析班+爬虫项目
  3. 怪不得超市不让带宠物...
  4. Office 2003 主 Interop 程序集的安装和使用
  5. 关于springMVC的日志管理
  6. 机房重构-panel控件
  7. AgentWeb嵌套h5 上传图片文件
  8. 文件输入流和文件输出流
  9. python计算ln与log,python计算以e为底的对数
  10. git强制拉取最新代码
  11. CSS3中的边框图片
  12. 同步/异步 异步回调 协成 线程队列
  13. 四大行、城商行等银行都在使用什么数据库?
  14. 吐血整理:手拿几个大厂offer的秘密武器!(免费领取)
  15. 使用ElementUi的tabs切换组件时下拉选择器出现破板情况
  16. eating的中文意思_eating是什么意思_eating的翻译_音标_读音_用法_例句_爱词霸在线词典...
  17. 下载Linux ISO镜像的方法 (带你快速了解)
  18. 无懈可击的web设计笔记
  19. 2021 年全国职业院校技能大赛 网络搭建与应用赛项
  20. VisualFreeBasic+Miniblink做浏览器实现js内容替换

热门文章

  1. oracle 内关联,左外关联,右外关联,全外关联
  2. leetcode有效的字母异位词--哈希表与Counter(两种方法天差地别)
  3. 计算机主机声音怎么办,电脑主机噪音怎么办?
  4. python制作窗口界面_用python编写简单ui界面窗口
  5. python 画散点图
  6. python画散点图 字体格式
  7. ecshop 的一些常用操作
  8. 稚晖君又整活啦,基于全志F1C200s的超迷你低成本开发板开源
  9. 5种IO模型、阻塞IO和非阻塞IO、同步IO和异步IO
  10. 计算用户的平均次日留存率