关于这个问题,可以在github里边查看
https://github.com/flutter/flutter/issues/7032
最后解决方案是这样的,直接上代码
在布局的最外层包一个AnimatedContainer,transtorm这个属性,是对布局进行三维变化。
关于_verticalOffset这个变量,可以通过键盘弹出时候的偏移来计算
_verticalOffset = -MediaQuery.of(context).viewInsets.bottom * kFactor
这个kFactor,可以根据你的TextField显示的位置进行设置,如果在最下方,就让他刚好等于1,键盘弹出的时候,直接顶到最上方就可以了。
当然,通过界面的计算也是可以的
网友评论