private DatePickerDialog getDatePickerDialog(boolean create) { if (mDatePickerDialog == null && create) { mDatePickerDialog = DatePickerDialog.newInstance(mCallback, mYear, mMonth, mDay); mDatePickerDialog.setForceNotShow(true); final FragmentManager fm = Activity.extract(getContext(), true).getSupportFragmentManager(); final FragmentTransaction ft = fm.beginTransaction(); ft.add(mDatePickerDialog, getClass().getName() + "@" + getKey()); ft.commitAllowingStateLoss(); fm.executePendingTransactions(); } return mDatePickerDialog; }
protected void updateDialogState() { final DatePickerDialog dialog = getDatePickerDialog(false); if (dialog != null) { dialog.setDate(mYear, mMonth, mDay); } }