方向更改处理是否像在 Flutter 中使用更新的尺寸重新运行小部件的构建一样简单?
我问是因为在 Android 中,整个 Activity 都会被重建,这就是为什么所有信息都通过 Intent 发送的原因。
在设计小部件时要记住哪些问题,以便它们处理方向更改或导致 UI 更改的其他更改?
最佳答案
基本上 - 是的!现在,更具体地说 MediaQuery
小部件监听方向/大小/布局变化并重建它的 child 。这个小部件已经是 MaterialApp
和 WidgetsApp
小部件的一部分,因此您可能不需要包含它。
如果您希望您的小部件利用设备方向,您可以使用 MediaQuery.of
静态成员来访问 MediaQueryData
,其中包含设备方向。例如,一个以纵向和横向显示不同文本的简单小部件(需要是 MaterialApp
、WidgetsApp
或 MediaQuery
的子级)。
class MyWidget extends StatelessWidget {
Widget build(BuildContext context) {
final mediaQueryData = MediaQuery.of(context);
if (mediaQueryData.orientation == Orientation.landscape) {
return const Text('landscape');
}
return const Text('portrait!');
}
}
https://stackoverflow.com/questions/49663494/
相关文章:
android - Flutter 使用 ProGuard 和 Firebase Auth 构建崩溃
image - Flutter - 将图像上传到 Firebase 存储
multithreading - 如何在 Flutter 中在后台运行任务?
dart - 是否可以使用 Flutter 提供的 Dart SDK 作为 AngularDart
flutter - 如何停止 flutter 应用程序中的firebase错误
firebase - Flutter Admob AppID 使用 Android 还是 iOS?
android - Flutter Android Studio 中缺少设备文件资源管理器选项