flutter - 在 Flutter 中锁定每个屏幕的屏幕方向在 iPad 上不起作用

标签 flutter ipad screen-orientation

我正在开发一个应用程序,可以根据屏幕的不同将屏幕方向锁定为纵向或横向。 IE。我有一个使用纵向模式的设置流程,但完成并启动“应用程序”后,我会切换到横向模式。

无论如何,每个屏幕锁定代码(在谷歌搜索时推荐)在我的 iPhone 上工作正常,但在我的 iPad 上不起作用。

在 iPad 上,屏幕旋转并变黑。

锁定设置屏幕的代码:

  @override
  void initState() {
    super.initState();
    SystemChrome.setPreferredOrientations([
      DeviceOrientation.portraitUp,
      DeviceOrientation.portraitDown,
    ]);
  }

是的,我已经做到了

 WidgetsFlutterBinding.ensureInitialized();

最佳答案

我终于通过手动编辑 Info.plist 文件修复了这个问题。

使用文本编辑器打开它并更改您找到的支持的方向值:

<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
</array>

第一个 block 适用于 iPhone,第二个 block 适用于 iPad(这将阻止多任务处理)

关于flutter - 在 Flutter 中锁定每个屏幕的屏幕方向在 iPad 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73088824/

相关文章:

flutter - 在 flutter 中更改包名称后 app-release.apk 未安装?

flutter - 如何从扫描的照片中选择文本?

ios - 有没有办法防止工具栏出现在路线更改时?苹果iPad

java - 如何识别我从black-berry/iphone/ipad收到的电子邮件?

iphone - UIModalTransitionStyleFlipHorizo​​ntal 在横向模式下垂直翻转

android - Flutter App Firebase 推送通知未在后台出现

flutter - 与提供商更改颜色和图标

ios - UITableView中的deleteObject错误,无法重复

android - 如何响应 Dialog 中的方向变化

ipad - 装有 iOS 8 的 iPad 中的方向问题