У меня две кнопки. Первый вылета, второй прилета. У даты вылета minDate = today. А у даты прилета minDate должна быть равной выбранной дате на вылета.
В onCreate():final Calendar nextYear = Calendar.getInstance();
nextYear.add(Calendar.YEAR, 1);
Date today = new Date();
Date departs;
initButtonListeners(today, nextYear);
Сами клики:public void initButtonListeners(final Date today, final Calendar nextYear) {
findViewById(id.linearCalendar).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showCalendarInDialog("Выберите дату вылета", R.layout.calendar_dialog_customized);
dialogView.init(today, nextYear.getTime())
.withSelectedDate(new Date(departData));
}
});
findViewById(id.linearArrive).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showCalendarInDialog("Выберите дату прилета", R.layout.calendar_dialog_customized);
Date dates = null;
SimpleDateFormat format = new SimpleDateFormat("dd MMM yyyy");
try {
dates = format.parse(departData);
} catch (ParseException e) {
e.printStackTrace();
}
dialogView.init(dates, nextYear.getTime())
.withSelectedDate(new Date(arriveData));
}
}
});
}
OnDateClickListener:dialogView.setOnDateSelectedListener(new CalendarPickerView.OnDateSelectedListener() {
DateFormat dateFormat = new SimpleDateFormat("dd MMM yyyy");
@Override
public void onDateSelected(Date date) {
if(isFrom){
departData = dateFormat.format(date);
tvDepart.setText(departData);
}else{
arriveData = dateFormat.format(date);
tvArrive.setText(arriveData);
}
theDialog.dismiss();
}
@Override
public void onDateUnselected(Date date) {
}
});
При клике Прилета, вылетает приложение, говорит о нулевом значенииОшибка:java.lang.IllegalArgumentException: The string argument is null
at java.util.Date.parse(Date.java:373)
at java.util.Date.<init>(Date.java:149)
at com.tezz.MainContent.ContentActivity$2.onClick(ContentActivity.java:305)
at android.view.View.performClick(View.java:4084)
at android.view.View$PerformClick.run(View.java:16966)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Вопрос:
Что не правильно, как поставить minDate?