欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解Flutter点击空白隐藏键盘的全局做法

程序员文章站 2022-03-07 15:37:36
开发原生页面的时候,在处理键盘事件上,通常的需求是,点击输入框外屏幕,要隐藏键盘,同样的,这样的需求也需要在 flutter 上实现,android 上的实现方式是在基类 activity 里实现事件...

开发原生页面的时候,在处理键盘事件上,通常的需求是,点击输入框外屏幕,要隐藏键盘,同样的,这样的需求也需要在 flutter 上实现,

android 上的实现方式是在基类 activity 里实现事件分发,判断触摸位置是否在输入框内。

那么在 flutter 上如何实现呢?

许多文章的做法如下,每个包含textfield的屏幕中包裹gesturedetector,手动控制focus。一旦失去焦点,就请求关闭键盘。这是一个临时的解决方案,容易出错,并且生成大量代码。

通常这种需求是对应整个 app 的,有没有一劳永逸的方法呢?当然有,我们可以借助materialapp的builder方法,在 navigator上方但在其他小部件下方插入小部件,仅添加了一个“全局” gesturedetector,它将为我们处理键盘关闭:

详解Flutter点击空白隐藏键盘的全局做法

当然也可以使用下面这个方法关闭键盘:

这样就全局控制,再也不用在每个页面写了。

到此这篇关于详解flutter点击空白隐藏键盘的全局做法的文章就介绍到这了,更多相关flutter点击空白隐藏键盘内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!