java - How to set a minimum date -
i have 2 buttons. first button - depart , second - arrival. @ date of departure mindate = today. , arrival date mindate should equal selected date of departure
oncreate():
final calendar nextyear = calendar.getinstance(); nextyear.add(calendar.year, 1); date today = new date(); date departs; initbuttonlisteners(today, nextyear);
buttonclicklistener:
public void initbuttonlisteners(final date today, final calendar nextyear) { findviewbyid(id.linearcalendar).setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { showcalendarindialog("select departure date", 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("select arrival date", 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) { } });
when click on arrival button crashes app shows value zero
error:
java.lang.illegalargumentexception: string argument null @ java.util.date.parse(date.java:373) @ java.util.date.<init>(date.java:149) @ com.tezz.maincontent.contentactivity$2.onclick(contentactivity.java:305) @ android.view.view.performclick(view.java:4084) @ android.view.view$performclick.run(view.java:16966) @ android.os.handler.handlecallback(handler.java:615) @ android.os.handler.dispatchmessage(handler.java:92) @ android.os.looper.loop(looper.java:137) @ android.app.activitythread.main(activitythread.java:4745) @ java.lang.reflect.method.invokenative(native method) @ java.lang.reflect.method.invoke(method.java:511) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:786) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:553) @ dalvik.system.nativestart.main(native method)
what not right, how put mindate?
try if (event.value) { // convert field value date var d = util.scand("mmddyyyy", event.value); // set maximum date var d_max = new date(2013, 11, 31, 23, 59, 59); // set minimum date var d_min = new date(2010, 11, 31, 23, 59, 59); if (d.gettime()>d_max.gettime() || d.gettime()<d_min.gettime()) { // reject entry event.rc = false; // optionally, alert user app.alert("message here."); } }
Comments
Post a Comment