我們在開發android應用時,經常會遇到一個問題,那就是運行應用後,由於屏幕關閉,不得不重新按鎖屏鍵重新進入,但是通常會在解鎖完屏幕,發現裏面的界面已經被重新加載了,不符合我們做遊戲類應用的想法(遊戲數據被清除,界面重加載),我今天也遇到這樣的問題,查了半天都沒結果,後來在不經意間試了一下,竟然解決了這個問題,索性拿出來跟大家分享一下,如果大家有更好的方法,希望能共享一下。
以下是我的解決方法:
在AndroidManifest.xml文件中的對應的activity裏面添加這樣兩句話
android:screenOrientation="landscape"
android:configChanges="orientation|screenSize"
這樣一來,我的遊戲界面就能像之前那樣橫屏且按鎖屏鍵不會導致下次進入時activity重新調用onCreate了。
瞭解了一下,據說是4.0以後版本,在每次鎖屏後進入activity會調用screenSize,導致每次界面重新加載,所以直接運行了onCreate方法重新運行了一次,爲了不讓這個事情發生,就必須固定它了