繁体   English   中英

锁定/解锁方向

[英]lock/unlock orientation

要将我的方向锁定为肖像,我使用:

activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

我不确定哪个标志告诉活动回到依赖于设备方向。 我想这是其中之一:

SCREEN_ORIENTATION_FULL_SENSOR
SCREEN_ORIENTATION_SENSOR
SCREEN_ORIENTATION_UNSPECIFIED
SCREEN_ORIENTATION_USER

另外请注意,为什么Android文档不是开源的? 文档完全缺乏。 很少有函数和标志有有用的描述。

根据http://developer.android.com/reference/android/R.attr.html#screenOrientation (如果你SCREEN_ORIENTATION_SENSOR SCREEN_ORIENTATION_FULL_SENSOR文档,screenOrientation就是那些值链接到的那些), SCREEN_ORIENTATION_SENSORSCREEN_ORIENTATION_FULL_SENSOR将会这样做,具体取决于多少您想要的灵活性 - 但是,我怀疑您真正想要的是返回默认设置,即SCREEN_ORIENTATION_UNSPECIFIED以便它返回到系统默认设置,包括任何用户设置。

对我有用的一个简单的解决方法是在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>

如果此活动的应用程序manifest entry的“ android:immersive"属性设置为“ true ”,则ActivityInfo.flags成员始终设置其FLAG_IMMERSIVE位,即使沉浸模式在运行时使用“ setImmersive()更改” setImmersive() “ 方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM