處理屏幕方向的變化 控制Activity的顯示方向

偶爾地,你可能想要確保你的應用程序在某一個肯定的方向上面顯示,橫屏模式或豎屏模式。例如,你可能會開發一款只在橫屏模式下面運行的遊戲。在這種狀況下,能夠經過編寫代碼,強制把Activity的方向設置爲橫向,這須要使用Activity類的setRequestOrientation()方法。 [java] view plaincopy import android.content.pm.ActivityInfo;   @Override   public void onCreate(Bundle savedInstanceState) {       super.onCreate(savedInstanceState);       setContentView(R.layout.main);              // 設置爲橫屏模式       setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);          }   若是想要設置爲豎屏模式,能夠使用ActivityInfo.SCREEN_ORIENTATION_PORTRAIT常量。 除了使用setRequestOrientation()方法,也能夠在AndroidManifest.xml文件中進行設置。 [html] view plaincopy <?xml version="1.0" encoding="utf-8"?>   <manifest xmlns:android="http://schemas.android.com/apk/res/android"       package="net.learn2develop.Orientations"       android:versionCode="1"       android:versionName="1.0" >          <uses-sdk android:minSdkVersion="14" />          <application           android:icon="@drawable/ic_launcher"           android:label="@string/app_name" >           <activity               android:label="@string/app_name"               android:name=".OrientationsActivity"           <!-- 設置screenOrientation-->               android:screenOrientation="landscape" >               <intent-filter >                   <action android:name="android.intent.action.MAIN" />                      <category android:name="android.intent.category.LAUNCHER" />               </intent-filter>           </activity>       </application>      </manifest>   在以前的例子中,被包含的Activity被設置成了橫屏模式,同時阻止了Activity被銷燬。這是由於,Activity被設置成了固定的方向,當設備的方向改變時,Activity不會被銷燬,onCreate()方法也就不會被調用。 下面是android:screenOrientation屬性的另外兩個可取的值: portrait —— 豎屏模式 sensor —— 依據重力測試器去判斷方向(默認值)
相關文章
相關標籤/搜索