2

我在 datepickerdialog 中有 setMaxDate。它运行良好,但年份段的最小值是 1980。我如何将该值设置为 1900。我的代码是:

DatePickerDialog dp=new DatePickerDialog(getParent(),datesetListener,day,month,year);
dp.getDatePicker().setMaxDate(System.currentTimeinMillis());
4

2 回答 2

1

尝试这个dp.setMinDate(new Date(1900,1,1));

于 2014-04-17T12:35:16.223 回答
1

您可以从 DatePickerDialog 获取底层 DatePicker(只需调用 getDatePicker())并使用以下方法设置其边界:

setMinDate(long minDate)

setMaxDate(long maxDate)

其中参数是自默认时区 1970 年 1 月 1 日 00:00:00 以来的通常毫秒数。当然,您仍然需要计算这些值,但这对于 Calendar 类应该是微不足道的:只需传递当前日期并从中添加或减去 x 年。

从这里这里引用

示例代码

        Date min = new Date(2013-1900, 4, 21);
        DatePicker p = getDatePicker();
        p.setMinDate(min.getTime());
于 2014-04-17T12:39:33.127 回答