【发布时间】:2015-03-19 21:41:54
【问题描述】:
我有 2 个 DatePicker,第一个是开始日期,第二个是结束日期。我希望两者都具有当前日期的 maxDate (这适用于我的代码),并且我希望当我更改开始日期时,第二个 DatePicker 的 minDate 将更新为该日期(反之亦然)。使用此侦听器,我可以处理操作,但第二个 DatePicker 不会在布局上刷新其 minDate。
private DatePicker.OnDateChangedListener startDataListener = new DatePicker.OnDateChangedListener() {
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
Calendar c = Calendar.getInstance();
c.set(year, monthOfYear, dayOfMonth);
endDate.setMinDate(c.getTimeInMillis());
}
};
private DatePicker.OnDateChangedListener endDateListener = new DatePicker.OnDateChangedListener() {
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
Calendar c = Calendar.getInstance();
c.set(year, monthOfYear, dayOfMonth);
startDate.setMaxDate(c.getTimeInMillis());
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startDate= (DatePicker)findViewById(***);
endDate= (DatePicker)findViewById(***);
startDate.setMaxDate(Calendar.getInstance().getTimeInMillis());
startDate.init(year, month, day, startDateListener);
endDate.setMinDate(c.getTimeInMillis()-1000);
endDate.setMaxDate(c.getTimeInMillis());
endDate.init(year, month, day, endDateListener);
}
【问题讨论】:
标签: android datepicker