嗨每一个预先感谢.. 我有要求在我的应用程序,我有日期选择器来设置日期。现在我想限制日期选择器将日期设置为高于系统当前日期,但不低于系统当前日期。怎么样....? 任何人都可以帮助我从这....以及如何使用日期选择器日期验证系统当前日期。如何停止日期选择器对话框日期以设置以前的日期。它应该只允许以上系统当前日期日期
回答
在这种情况下,你可以扩展DatePickerDialog
,使自己实现OnDateChanged
,被称为每次这一点,你得到的日期更改为参数的DatePicker,和新的年,月,日的值,所以您可以检查如果该日期已过,并且在这种情况下抛出错误(使用Toast或其他)并调用DatePicker.updateDate()来设置正确的值(以便DatePicker始终处于一致状态)。
此外,你可以打电话DatePicker.init(year, monthOfYear, dayOfMonth, onDateChangedListener);
那么你可以传递一个
onDateChangedListener implementation without having to extend DatePickerDialog.
编辑:(我从来没有尝试,但我认为它可以做你的工作。)
DatePicker“ s
setMinDate(long minDate)
设置此NumberPicker支持的最短日期,以Januar以来的毫秒数y 1,1970 00:00:00在getDefault()时区中。
实施例:
DatePickerDialog dialog = new DatePickerDialog(this, mDateSetListener, cyear, cmonth, cday);
dialog.getDatePicker().setMinDate(new Date());
使用setMinDateCalendarView类的功能。您可以在这里以毫秒为单位设置日期。为了防止未来的日期使用setMaxDate
使用getDatePicker获取日期选择器并设置calendarView,如上所述。
我要限制的日期选取器不允许用户设置如下系统当前日期的日期...怎么样?在代码中? – user774041 2012-01-10 08:59:12
private int myear; //Declare these three variables in MainActivity and call showDialog(1)
private int mmonth;
private int mday;
final Calendar myCalendar= Calendar.getInstance();
private void setCurrentDateOnView() { //Call this method before showDialog
myear = myCalendar.get(Calendar.YEAR);
mmonth = myCalendar.get(Calendar.MONTH);
mday = myCalendar.get(Calendar.DAY_OF_MONTH);
}
protected Dialog onCreateDialog(int id) {
switch (id) {
case 1:
DatePickerDialog startDate = new DatePickerDialog(this, datePickerListener, myear,mmonth,
mday){
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
}
};
myCalendar.set(myear, mmonth, mday);
long startTime = myCalendar.getTimeInMillis();
startDate.getDatePicker().setMinDate(startTime - 1000);
return startDate;
}
return null;
}
thanx bro ..此代码正在为我工作.. – 2017-08-02 18:37:03
- 1. 如何将日期选择器文本框日期限制为将来的日期。它应该只允许以前的日期
- 2. 如何只允许选择日历中当前日期两周的日期?
- 3. 更改日期选择器对话框当前日期 - android java
- 4. 根据日期选择器中选择的日期禁用日期选择器的以前的日期
- 5. 比较在日期选择器日期与当前日期
- 6. 在日期选择器对话中选取当前日期
- 7. 如何在wijmo日期选择器上选择当前日期
- 8. 选择日期到当前日期 - mysql
- 9. Android:日期选择器不应该接受当前日期和未来日期
- 10. 将SilverLight日期选择器的默认日期设置为当前日期
- 11. 日期验证,以便没有选择以前的日期
- 12. 选择一个日期,然后选择该日期前的前一个日期
- 13. 日期选择器:输入值设置为当前日期
- 14. 引导日期选择器未禁用以前的日期
- 15. 如何设置日期选取器对话框最大日期和minmum日期
- 16. GWT日期 - 不允许在开始日期之前选择日期
- 17. 设置日期日期选择器
- 18. Sugarcrm日期选择器在当前日期之前禁用日期
- 19. 日期选择器滚动到过去的日期,即使最小的日期设置为当前日期
- 20. 选择查询以选择最近的日期,该日期小于或等于postgresql中的当前日期
- 21. 需要禁用datetime选择器中当前日期的以前日期
- 22. 不应选择当前日期之前的日期
- 23. 比较日期选择器日期和当前日期并应用before()函数
- 24. 选择最大日期和日期前
- 25. 当前日期或选定日期的jQuery的日期选择器
- 26. 对于以前的日期
- 27. 在日历上将当前日期设置为默认日期
- 28. 如何比较当前日期和选择器的日期
- 29. SQL当前系统日期
- 30. PHP代码只得到当前日期(系统日期)
谢谢你这个工作对我来说....这导致计算器例外,我处理得..... – praveenb 2013-06-07 05:07:29