2010年8月13日 星期五

[Android] Lock Screen Orientation in Android

 

當應用程式不支援橫向或縱向畫面時,要如何固定畫面不翻轉呢? 如下

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="irdc.IPDroid"
android:versionCode="1"
android:versionName="1.0">
<application android:label="@string/app_name" android:debuggable="true" android:icon="@drawable/icon">
<activity android:name=".IPDroid"
android:label="@string/app_name"
android:screenOrientation="landscape">
<!--screenOrientation為固定畫面的方向-->
<!--參數為 landscape為橫向 portrait為縱向 nosensor為關閉重力感應器-->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

</application>
<uses-sdk android:minSdkVersion="7" />
</manifest>

另外如果應用程式支援橫向或縱向畫面的翻轉時,記得只要一翻轉Activity就會被銷毀畫面就會重Load......要如何避免重Load勒? 也是在AndroidManifest.xml中多加一句,如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="irdc.IPDroid"
android:versionCode="1"
android:versionName="1.0">
<application android:label="@string/app_name" android:debuggable="true" android:icon="@drawable/icon">
<activity android:name=".IPDroid"
android:label="@string/app_name"
android:configChanges="keyboardHidden|orientation">
<!--上面這句...-->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

</application>
<uses-sdk android:minSdkVersion="7" />

<uses-permission android:name="android.permission.WRITE_APN_SETTINGS"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.WRITE_SETTINGS"></uses-permission>
</manifest>

並且在翻轉時將會觸發 onConfigurationChanged,如下

@Override
public void onConfigurationChanged(Configuration newConfig)
{
// TODO Auto-generated method stub
super.onConfigurationChanged(newConfig);
}

沒有留言:

張貼留言