2013-05-07 5 views
1

У меня был выбор даты. Я хочу установить дату с датой, чтобы, когда пользователь настраивает дату. Не следует указывать, что минимальная дата и эта дата должны быть не ниже завтраAndroid set date date miner

я сделал

//==============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============================ 
+0

должна быть не меньше, чем завтра ?? вы имеете в виду установить максимальную дату? – Lucifer

ответ

1

OnDateChangedListener Установите на ваш DateTimePicker, где в

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

проверки, если дата в вашем допустимом диапазоне, и если нет, то звоните view.updateDate с максимальным или минимальным допустимым (например, в зависимости от того, что ближе к введенной дате).

1

Используйте setMinDate (long minDate), чтобы установить минимальную дату, поддерживаемую этим NumberPicker в миллисекундах с 1 января 1970 года 00:00:00 в часовом поясе getDefault().

Если вы используете DatePickerDialog использовать getDatePicker() получить DatePicker дату

+0

+1, не заметил этот метод, хотя OP все еще нуждается в методе ограничения максимальной даты, поддерживаемой – Axarydax

+0

Его также есть setMaxDate см. Http://developer.android.com/reference/android/widget/DatePicker.html#setMaxDate (long) –

+0

это определенно слишком рано утром, чтобы я отвечал на вопросы SO :) – Axarydax