Flutter 2.2.1滚动时出现Null check operator used on a null value错误求助
问题根因
你编写的业务代码不存在逻辑错误,该报错是 Flutter 2.2.1 稳定版自带的 Widget Inspector 调试工具的已知兼容性缺陷,触发条件为同时开启 NestedScrollView 的 floatHeaderSlivers: true 属性和 SliverAppBar 的 snap: true 属性,滚动触发 SliverAppBar 浮动吸附动画时,Inspector 的组件树查询接口对空值使用了非空断言运算符,因此抛出异常。
该错误仅在调试模式下出现,Release 打包后不会触发,不影响线上业务运行。
解决方案
你可以根据自身需求任选一种方案处理:
- 临时规避:如果当前不需要使用 Flutter Inspector 组件检查功能,直接关闭 IDE 中的 Inspector 插件即可,报错会立即消失。
- 版本升级:该缺陷已在后续版本修复,将 Flutter 升级到 2.5.0 及以上稳定版即可彻底解决问题,无需修改任何业务代码,升级命令如下:
flutter upgrade - 版本兼容:如果暂时不想升级 Flutter 版本,删除
SliverAppBar的snap: true配置,或是将NestedScrollView的floatHeaderSlivers改为false,二者不同时开启就不会触发该报错。
内容的提问来源于stack exchange,提问作者Guy Cohen
相关产品推荐
相关产品推荐

