我正在编写一个使用具有不同内容( Activity )的选项卡的 android 应用程序。 在其中一项 Activity 中,我想将屏幕方向锁定为“横向”模式, 但在其他 Activity 中,我想要正常的方向(根据传感器)。
我现在正在做的是我正在打电话
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
当我切换到横向模式 Activity 时,
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
当我切换回其他 Activity 时。但是,这似乎不起作用, 整个应用程序锁定。解决这个问题的正常方法是什么?
最佳答案
在 Manifest 中,您可以将 screenOrientation 设置为横向。它在 XML 中看起来像这样:
<activity android:name="MyActivity"
android:screenOrientation="landscape"
android:configChanges="keyboardHidden|orientation|screenSize">
...
</activity>
MyActivity
是您想要保持在横向的位置。
android:configChanges=...
行可防止在屏幕旋转时调用 onResume()
、onPause()
。如果没有这条线,轮换将按照您的要求保持不变,但仍会进行调用。
注意:keyboardHidden
和orientation
对于
关于android - 锁定屏幕方向 (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4675750/