flutter使用坑点记录
1 container点击失效一般container点击,可能会在container外包一层 GestureDetector(),有时候你会发现点击事件无效或是只有点击了文字或图片之后才会触发点击事件解决办法1 为Container设置背景颜色2GestureDetector的 behavior 属性设置为 opaque 或 translucentGestureDetector的 behavior
container点击失效
一般container点击,可能会在container外包一层 GestureDetector(),有时候你会发现点击事件无效或是只有点击了文字或图片之后才会触发点击事件
解决办法
1 为Container设置背景颜色
2GestureDetector的 behavior 属性设置为 opaque 或 translucent
GestureDetector的 behavior 属性解释
GestureDetector 的behavior处理事件的方式有以下三种:
HitTestBehavior.opaque、 HitTestBehavior.deferToChild、HitTestBehavior.translucent
HitTestBehavior.opaque 自己处理事件
HitTestBehavior.deferToChild child处理事件
HitTestBehavior.translucent 自己和child都可以接收事件
flutter生命周期相关
使用Navigator.pushNamed(context,“LoginPage”); 从页面A跳转到页面B A页面不会触发dispose()方法销毁
而跳转到B页面,会执行B页面的initstate(),使用Navigator.pop(context)或者回退键回到A页面,B页面会执行
dispose()销毁。
如上代码
在点击BottomNavigationBar底部BottomNavigationBarItem切换页面时候,每次切换都会触发页面重建销毁
软键盘弹起遮盖控件之后异常报错
如果是使用了Scaffold(),在Scaffold中添加如下属性代码:resizeToAvoidBottomInset: false 即可解决
resizeToAvoidBottomInset看flutter注解,Whether this scaffold is being displayed at the top of the screen.
是否显示在屏幕顶部,默认为true,即显示在屏幕顶部
Expanded 父控件最好是Row或者Coulm
更多推荐
所有评论(0)