Activity關於onConfigurationChanged方法

方法介紹

  • 方法:public void onConfigurationChanged(Configuration newConfig)android

  • 場景:markdown

    • 當系統的 配置信息 發生改變時,系統會調用此方法。
    • 前提是,在清單文件AndroidManifest中配置了configChanges屬性 對應的 設備配置,該方法纔會被調用。
    • 若是發生 設備配置信息改變 與configChanges 屬性設置 不一致,則Activity會被銷燬並使用新的配置重建。
    • 以上三句話舉個列子,好比 如今橫豎屏切換,configChanges屬性 設置 android:configChanges="keyboard",那Activity依然會銷燬重建,由於它設置的屬性 和 發生的設備信息 不一致,應當設置爲 android:configChanges="orientation|screenSize"
    • 系統配置信息:相似 屏幕方向,更換系統字體,顯示硬鍵盤...

案例解析一橫豎屏切換

1.Activity清單文件中 沒有設置 configChanges 屬性。

結論:只要屏幕發生改變activity就銷燬重建,不會走onConfigurationChanged 方法; oop

2.Activity清單文件中設置 android:configChanges="orientation|screenSize"

  • 結論:activity不會被銷燬重建,橫豎屏切換隻會走onConfigurationChanged方法字體

  • 注意:spa

    • targetSdkVersion的值小於13時,只須要配置orientation便可;.net

    • targetSdkVersion的值大於13時,必需要配置orientation|screenSize,不然只配置orientation,activity依然會銷燬重建。3d

感謝

blog.csdn.net/qq_27570955…code

相關文章
相關標籤/搜索