赞
踩
问题现象点击输入框弹起屏幕键盘后, 页面报超过长度异常
出现这个问题可以检查下自己的页面是否用了Scaffold
组件
由于Scaffold
默认是会动态计算长度的
当键盘弹起后会占用屏幕下部空间, 于是Scaffold
就动态把这个空间让渡出来
这时候如果Scaffold
中的子组件写了固定长度就很容易出现超过长度问题
网上好多文章都是 修改
resizeToAvoidBottomInset
属性为false
, 但新版本的flutter
中Scaffold
已经没有了这个属性
如果页面是头重脚轻的话这个方案可能行不通
最下方组件
外层套用一个Expend
最下方组件
中的固定高度去掉margin
或者padding
都行), 如果最下方组件
没有边距设置则用个Container
套住示例:
Expanded(
child: Container(
padding: EdgeInsets.only(bottom: 20),
child: 最下方组件(
// height: G.layout.L(G.screenHeight() * 0.6),
// constraints: BoxConstraints(
// minHeight: G.layout.L(240),
// maxHeight: G.layout.L(G.screenHeight() * 0.55),
// ),
child: ...省略
)
)
);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。