要将我的方向锁定为肖像,我使用:
的 activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
我不确定哪个标志告诉活动回到依赖于设备方向。我想这是其中之一:
的 SCREEN_ORIENTATION_FULL_SENSOR
SCREEN_ORIENTATION_SENSOR
SCREEN_ORIENTATION_UNSPECIFIED
SCREEN_ORIENTATION_USER
另外注意,为什么Android文档不是开源的?文档完全缺乏。很少有函数和标志有有用的描述。
答案 0 :(得分:19)
每http://developer.android.com/reference/android/R.attr.html#screenOrientation(如果您仔细阅读文档,screenOrientation就是这些值链接的内容),SCREEN_ORIENTATION_SENSOR
或SCREEN_ORIENTATION_FULL_SENSOR
会执行此操作,具体取决于您需要多少灵活性 - 但是,我怀疑你真正想要的是回到默认设置,即SCREEN_ORIENTATION_UNSPECIFIED
,以便它回到系统默认值,包括任何用户设置。
答案 1 :(得分:1)
对我有用的一个简单的解决方法是在AndroidManifest.xml中添加一行,如下所示:
添加android:screenOrientation =“portrait”>在申请部分。
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".App"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
答案 2 :(得分:0)
如果为此活动在应用的
android:immersive"
中将“true
属性设置为“manifest entry
”,则ActivityInfo.flags
成员始终将其FLAG_IMMERSIVE位置1,浸入模式在运行时使用“setImmersive()
”方法进行了更改。