限制DatePickerDialog的日期选择范围
时间: 2024-05-09 22:20:24 浏览: 119
JQuery日历插件My97DatePicker日期范围限制
您可以使用setMinDate和setMaxDate方法来限制DatePickerDialog的日期选择范围。
以下是一个例子:
```java
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);
DatePickerDialog datePickerDialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
// 这里是当用户选择日期后的回调
}
}, year, month, dayOfMonth);
// 设置最小日期为当天
datePickerDialog.getDatePicker().setMinDate(calendar.getTimeInMillis());
// 设置最大日期为一年后
calendar.add(Calendar.YEAR, 1);
datePickerDialog.getDatePicker().setMaxDate(calendar.getTimeInMillis());
datePickerDialog.show();
```
在上面的例子中,我们首先获取了当前日期,并使用它来创建一个DatePickerDialog。然后,我们使用setMinDate方法将最小日期设置为当天,使用setMaxDate方法将最大日期设置为一年后。最后,我们显示DatePickerDialog。
请注意,setMinDate和setMaxDate方法接受的参数是以毫秒为单位的时间戳。因此,我们需要将Calendar对象转换为时间戳,以便将其传递给这些方法。
阅读全文