Я использую уровень API 10, я не хочу использовать библиотеки поддержки только для того, чтобы реализовать DatePicker, поэтому я использую следующий подход для создания Диалога даты. Я использовал один DatePicker раньше, и он работал нормально. Я просто не могу понять, в чем проблема.DatePicker Не работает, IllegalArgumentException
У меня есть два диалоговых окна даты, чтобы выбрать дату, из которой вызываются индивидуальные OnClickListeners. Может ли кто-нибудь помочь? Спасибо.
// Это в OnCreate
ImageView fromCalendar = (ImageView) findViewById(R.id.from_calendar);
ImageView toCalendar = (ImageView) findViewById(R.id.to_calendar);
fromCalendar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDialog(FROM_DATE_DIALOG);
}
});
toCalendar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDialog(TO_DATE_DIALOG);
}
});
private DatePickerDialog.OnDateSetListener toDateSetListener = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
Log.e("mYear", "" + year + " mMonth:" + mMonth + " mDay" + mDay);
String date = updateDisplay(true);
toDate.setText(date);
}
};
вне // OnCreate
private DatePickerDialog.OnDateSetListener fromDateSetListener = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
Log.e("mYear", "" + year + " mMonth:" + mMonth + " mDay" + mDay);
String date = updateDisplay(true);
fromDate.setText(date);
}
};
protected Dialog onCreateDialog(int id) {
switch(id) {
case FROM_DATE_DIALOG:
Log.e("onCreateDialog::mYear", "" + mYear + " mMonth:" + mMonth
+ " mDay" + mDay);
return new DatePickerDialog(this, fromDateSetListener, mYear, mMonth,
mDay);
case TO_DATE_DIALOG:
Log.e("onCreateDialog::mYear", "" + mYear + " mMonth:" + mMonth
+ " mDay" + mDay);
return new DatePickerDialog(this, toDateSetListener, mYear, mMonth,
mDay);
}
return null;
}
Укажите, пожалуйста, свой выход logcat – eftokay83
, где 'mYear, mMonth, mDay' инициализируются? –