This question already has answers here:
Flutter: How to set and lock screen orientation on-demand
(5个答案)
在10个月前关闭。
我正在开发Flutter应用,我需要仅在某些类中阻止设备旋转,而在其他类中保持设备运行。我现在如何在应用程序中全局禁用旋转,但是如何仅在某些类中禁用旋转?
使用
(5个答案)
在10个月前关闭。
我正在开发Flutter应用,我需要仅在某些类中阻止设备旋转,而在其他类中保持设备运行。我现在如何在应用程序中全局禁用旋转,但是如何仅在某些类中禁用旋转?
最佳答案
您可以尝试在窗口小部件中使用如下所示的内容:
// to lock in landscape view
@override
void initState() {
super.initState();
SystemChrome.setPreferredOrientations([
DeviceOrientation.landscapeRight,
DeviceOrientation.landscapeLeft,
]);
}
@override
dispose() {
SystemChrome.setPreferredOrientations([
DeviceOrientation.landscapeRight,
DeviceOrientation.landscapeLeft,
DeviceOrientation.portraitUp,
DeviceOrientation.portraitDown,
]);
super.dispose();
}
使用
initState()
和dispose()
的事实意味着,如果还没有使用StatefulWidget
,则必须使用。10-01 21:14