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

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

提前致谢 拉维

【问题讨论】:

  • 如果它是过去的日期,是否只是提醒用户不可能?

标签: android datepicker


【解决方案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

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-09
    • 2013-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-03
    • 2021-10-04
    相关资源
    最近更新 更多