在方向更改上,重新創建活動並重新創建日期時間對話框。 我想保存已由用戶更改的日期時間對話框的狀態。如何在方向更改時保留日期時間對話框的狀態?
在我關閉對話框之前我想保留日期時間對話框的狀態。
請注意,我可以關閉onSaveInstanceState中的對話框,其中有可用的包。但是,當活動進入暫停狀態時也會調用它,在這種情況下,我不想解除對話框。因此,決定在onDestroy方法上解僱它,但我沒有捆綁對象。這就是爲什麼我面臨這個問題。有什麼方法可以訪問onDestroy中的包?或者我的問題任何其他建議,將不勝感激。
@Override
protected void onDestroy() {
if(dateTimeDialog !=null && dateTimeDialog.isShowing())
{
//<HERE I WANT THE STATE TO BE SAVED IN THE BUNDLE>
dateTimeDialog.dismiss();
}
super.onDestroy();
}
基本上,我們鎖定的應用程序,如果用戶移動從我們的應用程序了,並在解鎖屏幕,他正在查看對話框將繼續。如果我們解除了onSavedInstanceState上的對話框,解鎖應用程序後,它會調用onRestart,啓動和恢復方法,其中沒有任何一個方法將Bundle的實例作爲參數提供。
此外,我們有單獨的橫向&縱向佈局,因爲我們無法在清單文件中設置configChanges =「orientation」。
'DatePickerDialog'類具有'onSaveInstanceState()'和'onRestoreInstanceState()'方法。 –