限制Flutter应用的方向

时间:2019-10-29 14:18:25

标签: flutter android-orientation

如何限制应用程序的方向?

SystemChrome.setPreferredOrientations([DeviceOrientation.portraitDown])

我已经尝试过此代码,但无法解决问题。

2 个答案:

答案 0 :(得分:0)

您尝试过的实际上是可行的。但是,它不是强制的方向,只是首选。例如,这意味着如果您尝试使用

将方向设置为横向
SystemChrome.setPreferredOrientations([DeviceOrientation.landscape])

Flutter不会旋转方向,但是如果您将设备从纵向旋转为横向,则应用方向将被锁定为横向。

如果您希望Flutter以编程方式旋转方向,请强制,而不是首选,请考虑使用auto_orientation package

导入软件包后,您可以使用AutoOrientation.landscapeAutoMode();将方向锁定为横向。

答案 1 :(得分:0)

对于android,您可以使用android:screenOrientation属性在AndroidManifest.xml中定义方向

 <activity
            android:name=".MainActivity"
            android:launchMode="singleTop"
            android:screenOrientation="portrait"
            android:theme="@style/LaunchTheme"
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
            android:hardwareAccelerated="true"
            android:windowSoftInputMode="adjustResize">