簡體   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