动态调整setMinDate()

时间:2018-03-07 15:17:08

标签: android datepicker

我有两个日期选择器A,B(假设)。 'A'不得在今天之前允许任何日期,'B'不得允许'A'之前的任何日期。 我现在的代码:

@SuppressWarnings("deprecation")
@Override
protected Dialog onCreateDialog(int id) {
    // TODO Auto-generated method stub
    if (id == 999) {
        DatePickerDialog datePicker= new DatePickerDialog(this,
                myDateListener, year, month, day);
        datePicker.getDatePicker().setMinDate(System.currentTimeMillis()- 1000);
        return  datePicker;
    } else if (id == 998) {
        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.YEAR, year);
        cal.set(Calendar.MONTH, month);
        cal.set(Calendar.DAY_OF_MONTH, day);

        DatePickerDialog datePicker = new DatePickerDialog(this,
                myDateListener, year1, month1, day1);
        datePicker.getDatePicker().setMinDate( cal.getTimeInMillis() );
        return datePicker;
    }
    return null;
}

上述代码不允许A& B在今天之前显示任何日期。 你能救我一下......

1 个答案:

答案 0 :(得分:0)

将日期作为毫秒(长变量)传递,并在创建对话框中将其转换回日期并设置日期选择器的最小日期。