現(xiàn)在我們的手機(jī)一般都內(nèi)置有方向感應(yīng)器,手機(jī)屏幕會(huì)根據(jù)所處位置自動(dòng)進(jìn)行橫豎屏切換(前提是未鎖定屏幕方向)。但有時(shí)我們的應(yīng)用程序僅限在橫屏或者豎屏狀態(tài)下才可以運(yùn)行,此時(shí)我們需要鎖定該程序Activity運(yùn)行時(shí)的屏幕方向。還有就是在我們用手機(jī)觀看視頻時(shí),隨意的進(jìn)行橫豎屏切換,但播放進(jìn)度不會(huì)隨著屏幕的轉(zhuǎn)換而從頭開始播放,為了實(shí)現(xiàn)這個(gè)功能,我們就需要在Activity轉(zhuǎn)換時(shí)對當(dāng)前數(shù)據(jù)進(jìn)行保存。
現(xiàn)在根據(jù)以上兩種需求,個(gè)人提出以下解決方案:
一、鎖定Activity運(yùn)行時(shí)屏幕方向,如下圖(演示鎖定橫屏):
我們可以通過以下兩種方式實(shí)現(xiàn)鎖定Activity運(yùn)行時(shí)屏幕的方向:
(1)通過修改AndroidMainfest.xml配置文件
修改Android/app/mainfests/AndroidMainfest.xml下的配置文件如下:
<activity>節(jié)點(diǎn)的android:screenOrientation屬性可以完成該任務(wù)(portrait為保持豎屏,landscape為保持橫屏)
1 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 2 package="com.example.administrator.day18"> 3 <application 4 android:allowBackup="true" 5 android:icon="@mipmap/ic_launcher" 6 android:label="@string/app_name" 7 android:supportsRtl="true" 8 android:theme="@style/AppTheme"> 9 <activity android:name=".Main2Activity"10 //添加screenOrientation屬性(portrait為保持豎屏,landscape為保持橫屏)11