问题描述
- android中DatePicker日期限制的问题
- 我在activity中使用DatePicket方法来限制日期的选择。
我想限制用户挑选的日期,截止到目前的日期。
用户只能够选择今天的日期。
怎么用代码设置这个功能?
谢谢!
解决方案
给你提供一个有效的例子:
if(dateObj1.before(dateObj2) || dateObj1.equals(dateObj2)){//the program runs normally}else{ new AlertDialog.Builder(PM_Edit.this) .setTitle(""Wrong Data Input!"") .setMessage(""The end Date must be Before the start Date please insert new Date values"") .setNeutralButton(""Ok"" new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog int which) { } }).show(); }
解决方案二:
DatePicker datePicker = (DatePicker)findViewById(R.id.new_date_picker);datePicker.init(year month day new OnDateChangedListener() { @Override public void onDateChanged(DatePicker view int year int monthOfYearint dayOfMonth) { if(isDateAfter(view)){ Calendar mCalendar = Calendar.getInstance(); view.init(mCalendar.get(Calendar.YEAR) mCalendar.get(Calendar.MONTH) mCalendar.get(Calendar.DAY_OF_MONTH) this); } } private boolean isDateAfter(DatePicker tempView) { Calendar mCalendar = Calendar.getInstance(); Calendar tempCalendar = Calendar.getInstance(); tempCalendar.set(tempView.getYear() tempView.getMonth() tempView.getDayOfMonth() 0 0 0); if(tempCalendar.after(mCalendar)) return true; else return false; }});
时间: 2024-10-29 07:01:56