मेरी भी यही समस्या थी। यहाँ है कि मैं इसे कैसे हल किया।
चरण 1: डेट पिकर खोलने के लिए श्रोता पर क्लिक करें।
dateTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDateTimePicker();
}
});
चरण 2: एक श्रोता की घोषणा करें जो दिनांक परिवर्तन के लिए सुनता है।
public void showDateTimePicker(){
final Calendar currentDate = Calendar.getInstance();
date = Calendar.getInstance();
DatePickerDialog.OnDateSetListener dateSetListener = new
DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int year, int
monthOfYear, int dayOfMonth) {
date.set(year, monthOfYear, dayOfMonth);
}
};
}
चरण 3: अब हमें उपरोक्त showDateTimePicker () पद्धति के अंदर भी एक तिथि चयनकर्ता संवाद घोषित करने की आवश्यकता है। हम इस चरण में पिछली तारीखों तक पहुंच को सीमित कर रहे हैं।
public void showDateTimePicker(){
final Calendar currentDate = Calendar.getInstance();
date = Calendar.getInstance();
DatePickerDialog.OnDateSetListener dateSetListener = new
DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int year, int
monthOfYear, int dayOfMonth) {
date.set(year, monthOfYear, dayOfMonth);
}
};
DatePickerDialog datePickerDialog = new
DatePickerDialog(**Your Activity Name.this**, dateSetListener,
currentDate.get(Calendar.YEAR),
currentDate.get(Calendar.MONTH),
currentDate.get(Calendar.DAY_OF_MONTH));
datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);
datePickerDialog.show();
}
यह वह सब है जो आपको करने की आवश्यकता है। यहाँ अंतिम कोड है जिसे आप देखना चाहते हैं:
private Date date;
dateTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDateTimePicker();
}
});
public void showDateTimePicker(){
final Calendar currentDate = Calendar.getInstance();
date = Calendar.getInstance();
DatePickerDialog.OnDateSetListener dateSetListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int year, int monthOfYear, int dayOfMonth) {
date.set(year, monthOfYear, dayOfMonth);
}
};
DatePickerDialog datePickerDialog = new DatePickerDialog(**Your Activity Name.this**, dateSetListener, currentDate.get(Calendar.YEAR), currentDate.get(Calendar.MONTH), currentDate.get(Calendar.DAY_OF_MONTH));
datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);
datePickerDialog.show();
}
आशा है कि यह किसी की मदद करता है।