對話框是提示用戶作出決定或輸入額外信息的小窗口。
對話框不會填充屏幕,通常用于需要用戶采取行動才能繼續執行的模式事件。
通常將 DialogFragment 用作對話框的容器,通過fragment實現dialog的好處是:activity配置改變(例如轉向)進行重構的情況下,fragment管理器能夠自動重構,恢復原來的狀態,無需人工干預,并且能夠它能正確處理生命周期事件.
但是在實際應用的時候卻發現,旋轉屏幕居然也會報錯,如下是解決方法:
就是在相應的Activity(FragmentAcitivity)的配置文件里 加上這個屬性:
android:configChanges="orientation|screenSize"
如果想要在橫豎屏切換的時候保存或者處理其他數據 就需要重寫onConfigurationChanged方法了 Activity和Fragment里都可以
@Override
public void onConfigurationChanged(Configuration newConfig) {
//你的代碼
super.onConfigurationChanged(newConfig);
}
這樣 就不會再橫豎屏切換的時候導致宿主Activity重新啟動了。