在我的应用程序中,我有一个片段,其中包含一个显示DatePickerDialog的Button。 我希望能够更改DatePicker的某些方面(来自DatePickerDialog),然后才能向用户显示(即只显示一些字段(日,月,年)或限制日期内允许的日期)的DatePicker)。
我读到了这个可能的解决方案:Android DialogFragment - Get reference to date picker但对我来说,它似乎看起来不是正确的方法。
基本上,我需要在DatePickerFragment本身上调用show()之前获取DatePicker的引用。 还有其他可能的想法吗?
以下是我目前的一些代码:
public static GenericDatePickerDialog newInstance(int year, int month, int day) { GenericDatePickerDialog frag = new GenericDatePickerDialog(); Bundle args = new Bundle(); args.putInt(KEY_YEAR, year); args.putInt(KEY_MONTH, month); args.putInt(KEY_DAY, day); frag.setArguments(args); return frag; } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { Bundle args = getArguments(); mYear = args.getInt(KEY_YEAR); mMonth = args.getInt(KEY_MONTH); mDay = args.getInt(KEY_DAY); mDatePickerDialog = new DatePickerDialog(getActivity(), mCallback, mYear, mMonth, mDay); return mDatePickerDialog; } public void setRestrictionOnDate(boolean restrictMax, long time) { ... } public void hideDpFields() { ... }
答案 0 :(得分:0)
我最终在newInstance中实例化mDatePickerDialog,将Context作为参数。