在Android開發中,很多新手都會遇到Android設備橫豎屏的切換問題,橫豎屏的切換將導致Activity或者Fragment的重新初始化以及Activity和Fragment中數據重新初始化的問題。其實解決這些問題很簡單,有兩種處理方法:一、將屏幕固定,讓其不能進行橫豎屏切換;二、在文件配置中屏蔽Activity和Fragment在橫豎屏切換中的生命週期變化。
注意:以上兩種處理方法都是在AndroidManifest.xml文件中進行設置的。
以下就拿MainActivity活動進行舉例。
第一種處理方法:
<activity
android:name=".MainActivity"
android:screenOrientation="portrait">
</activity>
screenOrientation="portrait"的屬性設置就是將屏幕瀏覽方式設置爲portrait,這樣子就將屏幕固定爲豎屏,即使Android設備進行了橫屏操作,屏幕中的界面也不會變過來。
第二種處理方法:
<activity
android:name=".MainActivity"
android:configChanges="orientation|screenLayout|keyboardHidden">
</activity>
這種處理方式呢,有利有弊。這種處理方式呢,優點在於能夠實現橫豎屏切換,同時也可以避免數據初始化問題,但是缺點在於它屏蔽了Activity和Fragment的生命週期,若是開啓的Activity或者Fragment在完成它的任務之後我們應該關閉甚至銷燬,但是這兒屏蔽了生命週期,將會造成一定的資源浪費。
好了,今天的分享就到這兒了,歡迎大家評論討論。