日期选择器不应该接受小于当前日期的过去日期

Posted

技术标签:

【中文标题】日期选择器不应该接受小于当前日期的过去日期【英文标题】:Date Picker Should not accept past dates which are less then the current date in android 【发布时间】:2012-02-27 20:49:12 【问题描述】:

我正在开发一个类似提醒的应用程序,在这个用户可以根据日期创建任务。在这里,我想限制用户不要选择小于系统当前日期的过去日期。这样用户就不会为过去的日期创建任务。那么,任何人都可以帮助我解决这个问题。

提前致谢 拉维

【问题讨论】:

如果它是过去的日期,是否只是提醒用户不可能? 【参考方案1】:

我认为您正在使用 datepicker 对话框。如果是这样的话 在

OnDateSetListener dateSetListener = new OnDateSetListener() 
            @Override
            public void onDateSet(DatePicker view, int year,
                    int monthOfYear, int dayOfMonth) 
                try 
                    Date selectedDate = new SimpleDateFormat("yyyy/MM/dd").parse(year+"/"+monthOfYear+"/"+dayOfMonth);
Date currDate = new Date();
if(selectedDate.compareTo(currDate ) >=0 )
//then do your work
else
//show message


catch(Exception e)
  e.getMessage();


【讨论】:

谢谢。但我面临比较当前日期的问题。所以我用 if(selectedDate.compareTo(currDate) >=0 || selectedDate.compareTo(currDate) ==-1) 改变了 if 循环,我得到了结果。感谢您的帮助。【参考方案2】:

您可以使用OnDateSetListener 来实现此目的,如下所示

private DatePickerDialog.OnDateSetListener mDateSetListener =
    new DatePickerDialog.OnDateSetListener() 
public void onDateSet(DatePicker view, int year, 
        int monthOfYear, int dayOfMonth) 
    //here we get the selected date, so we can compare the date with current date 
            //and perform required operation


【讨论】:

以上是关于日期选择器不应该接受小于当前日期的过去日期的主要内容,如果未能解决你的问题,请参考以下文章

如何使用jquery检查日期不能小于当前日期?

无法选择当前日期作为未来日期

日期/时间选择器不提供更改的值

带有 Ajax 的 Jquery 日期选择器不起作用

如何在日期选择器角度禁用过去的日期

为啥这个引导日期选择器不显示日期选择器?