1

我有一个日期选择器我想设置一个最小日期,这样当用户设置一个日期时它不应该允许低于那个最小日期并且那个日期应该不小于明天

我做过

    //==============Date Picker============================

@Override
protected Dialog onCreateDialog(int id) {

    switch(id){
    case ID_DATEPICKER:

        return new DatePickerDialog(this,myDateSetListener,myYear, myMonth, myDay);
    default:
        return null;
    }
}

private DatePickerDialog.OnDateSetListener myDateSetListener = new DatePickerDialog.OnDateSetListener()
{
    @Override
    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) 
    {
        String date = String.valueOf(dayOfMonth)+"/"+ String.valueOf(monthOfYear+1) +"/"+ String.valueOf(year);
        dateEditText.setText(date);
    } 
};

//==============Date Picker============================
4

2 回答 2

2

使用setMinDate (long minDate)设置自 1970 年 1 月 1 日 00:00:00 在 getDefault() 时区以来此 NumberPicker 支持的最小日期(以毫秒为单位)。

如果你使用DatePickerDialogusegetDatePicker ()来获取DatePicker

于 2013-05-07T05:20:55.330 回答
1

设置一个OnDateChangedListener到你的DateTimePicker,在哪里

onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth)

检查日期是否在您允许的范围内,如果不在允许范围内,则调用view.updateDate允许的最大值或最小值(例如,以最接近输入日期的为准)。

于 2013-05-07T05:19:31.803 回答