उत्तर देने में बहुत देर हो सकती है, लेकिन min
और max
DatePickerDialog
के लिए दिनांक सेट करना आसान है। सभी एंड्रॉइड संस्करणों के लिए काम करता है। सीधे शब्दों में आप वापस जाने के लिए की जरूरत है DatePickerDialog
Android संस्करण
protected Dialog onCreateDialog(int id)
{
switch (id)
{
case DATE_DIALOG_ID:
DatePickerDialog dialog = null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
{
dialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener()
{
@Override
public void onDateSet(DatePicker view, int selectedYear, int selectedMonth, int selectedDate)
{
mTextView.setText(selectedDate + "/" + selectedMonth + 1 + "/" + selectedYear);
}
}, year, month - 1, date);
Calendar currentDate = Calendar.getInstance();
dialog.getDatePicker().setMaxDate(currentDate.getTimeInMillis());
//If you need you can set min date too
}
else
{
dialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener()
{
@Override
public void onDateSet(DatePicker view, int selectedYear, int selectedMonth, int selectedDate)
{
mTextView.setText(selectedDate + "/" + selectedMonth + 1 + "/" + selectedYear);
}
}, year, month - 1, date)
{
@Override
public void onDateChanged(DatePicker view, int year, int month, int day)
{
if (year <= maxYear && month + 1 <= maxMonth && date <= maxDate) //meets your criteria
{
view.updateDate(year, month, date); //update the date picker to selected date
}
else
{
view.updateDate(maxYear, maxMonth - 1, maxDate); // or you update the date picker to previously selected date
}
}
};
}
return dialog;
}
return null;
}
स्रोत
2013-08-30 19:56:27
मैं प्रोग्राम के न्यूनतम, अधिकतम चयन तिथियाँ निर्धारित, और भी DatePicker दृश्य के लिए वर्तमान (डिफ़ॉल्ट) तिथि निर्धारित करने में कामयाब रहे एक सरल रेखा टाइप करके इस लक्ष्य को हासिल कर सकते हैं: http://stackoverflow.com/ प्रश्न/6421874/डेट-टू-डेट-द-डेट-इन-द-डेटपिकर-विजेट-इन-एंड्रॉइड/7961268 # 7961268 –