详解Flutter点击空白隐藏键盘的全局做法
程序员文章站
2022-03-07 15:37:36
开发原生页面的时候,在处理键盘事件上,通常的需求是,点击输入框外屏幕,要隐藏键盘,同样的,这样的需求也需要在 flutter 上实现,android 上的实现方式是在基类 activity 里实现事件...
开发原生页面的时候,在处理键盘事件上,通常的需求是,点击输入框外屏幕,要隐藏键盘,同样的,这样的需求也需要在 flutter 上实现,
android 上的实现方式是在基类 activity 里实现事件分发,判断触摸位置是否在输入框内。
那么在 flutter 上如何实现呢?
许多文章的做法如下,每个包含textfield的屏幕中包裹gesturedetector,手动控制focus。一旦失去焦点,就请求关闭键盘。这是一个临时的解决方案,容易出错,并且生成大量代码。
通常这种需求是对应整个 app 的,有没有一劳永逸的方法呢?当然有,我们可以借助materialapp的builder方法,在 navigator上方但在其他小部件下方插入小部件,仅添加了一个“全局” gesturedetector,它将为我们处理键盘关闭:
当然也可以使用下面这个方法关闭键盘:
这样就全局控制,再也不用在每个页面写了。
到此这篇关于详解flutter点击空白隐藏键盘的全局做法的文章就介绍到这了,更多相关flutter点击空白隐藏键盘内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
推荐阅读
-
Android 中自定义Dialog样式的Activity点击空白处隐藏软键盘功能(dialog不消失)
-
详解vue中点击空白处隐藏div的实现(用指令实现)
-
详解Flutter点击空白隐藏键盘的全局做法
-
Flutter 全局点击空白处隐藏键盘实战
-
SwiftUI界面TextField隐藏键盘的三种方法( 点击空白处隐藏键盘)
-
【Flutter 实战】全局点击空白处隐藏键盘
-
详解vue中点击空白处隐藏div的实现(用指令实现)
-
Flutter 全局点击空白处隐藏键盘实战
-
【Flutter 常见问题】TextField 如何实现全局点击空白处隐藏键盘
-
详解Flutter点击空白隐藏键盘的全局做法