2013年6月19日

Android: Screen螢幕旋轉DIY

若自己處理螢幕旋轉,避免Android將我們的程式殺掉再重新產生,這不就是直覺上本來就應該的行為模式嗎?好端端的,幹麼旋轉個螢幕,就要把程式銷毀再重生,有點自找麻煩的感覺 :)

作起來也不難,只要作兩件事就ok了

  1. 在AndroidManifest.xml中,想自行處理旋轉的Activity加入
     <android.configChanges="screenSize|orientation">
  2. 在此Activity中實作 onConfigurationChanged() 若也沒有要套用不同的View的話,空的就可以了!
    public void onConfigurationChanged(Configuration newConfig) {
                     super.onConfigurationChanged(newConfig);
    }
    

Android 的說明提醒;若是configChanges中沒有提到的其他組態改變時,是不會呼叫我們寫的onConfigurationChanged(),而是系統照樣會把程式銷毀再重生!去看了一下有哪些組態改變,看起來,其他影響UI都不大,也許可以再加個 locale、fontScale等。

2013/06/19
注意: 如果你的App目的API level 13或更高 (經由宣告 minSdkVersion 和 targetSdkVersion ),則你必須也加上"screenSize"組態,因為當裝置的方向改變時,它也會改變。

沒有留言: