点击TextFormField出现残留弹窗Bug,切换页面仍存在需重启解决
问题描述
点击TextFormField时偶尔会触发一个异常弹窗,这个Bug出现频率不高,但一旦出现,就算切换到其他页面弹窗也会一直留在屏幕上,只能重启应用才能清除。

几个可以试试的排查方向
- 先检查TextFormField的
onTap或相关回调里是不是不小心写了触发弹窗的代码(比如误加了showDialog),而且没处理好弹窗的生命周期 - 试试切换到系统默认输入法,有些第三方输入法的弹窗可能会出现这种挂在界面上的问题
- 看看你的Flutter版本是不是比较旧,部分旧版本的TextFormField和弹窗交互有已知Bug,升级到最新稳定版可能能解决
- 要是你自己写了弹窗逻辑,记得加
barrierDismissible: true,同时在页面销毁(dispose)的时候手动调用Navigator.of(context).pop(),确保弹窗能被正确关闭 - 检查有没有用全局Key来管理弹窗,这种情况容易导致弹窗和当前上下文解绑,出现无法正常关闭的问题
内容的提问来源于stack exchange,提问作者Flutter Dev
相关产品推荐
相关产品推荐

