我正在构建一个 Flutter 应用,主要用于 iOS。
我的一个 View 有一个文本字段,当您点击它时会出现 iOS 键盘。问题是 - 布局不会像在原生 iOS 应用程序中那样平滑更改。相反,它会在键盘打开动画结束之前立即跳转到最终可用的屏幕高度。
我尝试将我的 SafeArea 元素包装在 AnimatedSize
和 AnimatedContainer
- 它没有帮助。
我的布局代码:
SafeArea(child:
Column(children:[
TextField(...)
])
)
如何在键盘出现时让布局平滑调整大小?
最佳答案
我使用类似的东西:
AnimatedPadding(
padding: MediaQuery.of(context).viewInsets,
duration: const Duration(milliseconds: 100),
curve: Curves.decelerate,
child: ....
)
这会根据 viewInsets(软件键盘高度)为填充设置动画。
https://stackoverflow.com/questions/54563854/
相关文章:
android - Flutter:在 Android Studio 中打开 android 模块被
flutter - 在 FutureBuilder 中设置提供者值
flutter - 小部件测试失败,未找到任何 MediaQuery 小部件
flutter - 在 Flutter PageView 中切换页面时丢失小部件状态
flutter - 当 Flutter TextField 中的键盘可见时,键盘顶部有很多空白区域
android - 在 Scroll Flutter 上隐藏 Appbar?
android - 为什么我的 Flutter 应用的 ListView 滚动不如 Flutter