flutter - 如何仅针对 Flutter 中的某些类防止设备旋转?
问题描述
我正在开发一个 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()
使用and的事实dispose()
意味着您必须使用 aStatefulWidget
如果情况并非如此。
推荐阅读
- typescript - TypeScript:检查的差异
- html - 让 div 在真实 div 之外溢出
- kotlin - 如何在 ktor http 客户端记录请求?
- nativescript - Nativescript 5 无法在本地机器上构建新应用程序
- ios - 如何在 iOS 中更改图像的大小(不是文件的大小,不是图像视图的大小)?
- swift - 带有数组的 Swift 强引用循环
- javascript - 无法使用 WebdriverJS 访问通过原型制作的功能
- ios - iOS 上的 Google 应用程序如何知道我的 Google 帐户?
- database - 如何在 Prestashop 的 .tpl 文件中从数据库中获取更多数据
- c++ - 空基础优化子对象的地址