我想在应用程序运行时更改应用程序的方向(仅限某些页面纵向和其他横向)
Posted
技术标签:
【中文标题】我想在应用程序运行时更改应用程序的方向(仅限某些页面纵向和其他横向)【英文标题】:I wanna change the orientation of my app while the app is runing (force certain pages portrait only and other landscape only) 【发布时间】:2020-03-07 06:27:47 【问题描述】:我想强制我的游戏应用的某些页面的方向。就像,我希望着陆页、游戏选项和玩家选择的方向为纵向,但我想在游戏开始时强制方向为横向...我尝试使用:
super.initState();
SystemChrome.setPreferredOrientations([
DeviceOrientation.landscapeLeft,
DeviceOrientation.landscapeRight,
])
它确实适用于android,(除了它在获得正确方向之前改变方向3次......)但在ios上,它不会强制改变......它只会在你转动设备时改变然后它工作并保持在横向模式。即使我将手机保持为纵向,我也希望视图发生变化...
有没有人遇到过同样的问题并知道如何解决?
我尝试将 SystemChrome.setPreferredOrientations
放入 Widget 构建函数中,但没有成功。
【问题讨论】:
你可以查看这个:pub.dev/packages/native_device_orientation 【参考方案1】:使用新版本的颤振,它可以在首选方向上工作。
SystemChrome.setPreferredOrientations([
DeviceOrientation.landscapeLeft,
DeviceOrientation.landscapeRight,
])
【讨论】:
【参考方案2】:尝试使用:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
这对我有用!
【讨论】:
【参考方案3】:这是 iOS 上 Flutter 的 known issue。您可以等待发布或通过运行命令flutter channel master
切换到最新的 Flutter 版本。但要小心 - master 分支不够稳定,无法在生产环境中使用。
【讨论】:
最新版本的方向也适用于 iOS 吗? @SimonB 至少它应该可以工作。根据他们在 10 天前合并修复的问题。以上是关于我想在应用程序运行时更改应用程序的方向(仅限某些页面纵向和其他横向)的主要内容,如果未能解决你的问题,请参考以下文章
我想在 iTunes Connect 中将我的通用应用程序更新为仅限 iPad 的应用程序。但是在提交二进制文件时我收到以下错误