【发布时间】:2013-10-11 15:57:41
【问题描述】:
我想不出这个愚蠢的小虫子。每当我启动 DatePickerDialog 时,默认设置日期日期是 Jan/01/1900。
这很奇怪,因为在平板电脑上,滑块旁边有一个日历视图,您也可以从中进行选择,并且它设置在当前日期,但滑块不是。
public static class DatePickerFragment extends DialogFragment implements
DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
Log.d("month",Integer.toString(mMonth)); //Is returning current month, like it should
return new DatePickerDialog(getActivity(), this, mDay, mMonth, mYear); //all set to current date
}
public void onDateSet(DatePicker view, int year, int month, int day) {
dateDue.setText(month + 1 + "/" + day + "/" + year);
}
}
【问题讨论】:
-
你在哪里选择 mDay/mMonth/mYear 值?
-
onCreate 方法。但是在我的日志中,月份标签等于当前月份 9,所以这应该不是问题,对吧?
-
检查值是否可以超出范围以查看对话框是否初始化为它们。使用调试器在运行时将 mMonth 设置为 14 并等待爆炸 :)
-
所以现在我们知道这些数字不会影响默认日期。找出原因。
-
我是个白痴。构造函数中参数的顺序是年月日。