【问题标题】:Issue on Setting MinDate on DatePickerDialog android在 DatePickerDialog android 中设置最小日期的问题
【发布时间】:2015-04-21 12:58:42
【问题描述】:

我在 Android 中使用DatePickerDialog 来选择日期范围,我可以在LolliPop (5+) 中设置minDateMaxDate。但是在 Lollipop 下面执行相同的操作时,它会抛出异常。

使用的代码:

Calendar cal_currentDate=Calendar.getInstance();

cal_currentDate.set(cal_currentDate.get(Calendar.YEAR),cal_currentDate.get(Calendar.MONTH)+1,cal_currentDate.get(Calendar.DAY_OF_MONTH));
Calendar cal = Calendar.getInstance();

DatePickerDialog datepicker=new DatePickerDialog(getActivity(),new OnDateSetListener() {
     @Override
     public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {}                         },
          cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DAY_OF_MONTH));
          datepicker.show();
          datepicker.getDatePicker().setMaxDate(cal.getTimeInMillis()); // here am setting Maximum date as current date
          cal.add(Calendar.MONTH,-3); // here am setting Minimum date 3 months less than current date         
          datepicker.getDatePicker().setMinDate(cal.getTimeInMillis());
          datepickerdialog.show();

结果:在 Android Lollipop 中运行良好。 在其他较低版本中出现异常崩溃

这里是异常消息

 java.lang.IllegalArgumentException: Time not between Sat Mar 21 18:23:16 GMT+00:00 2015 and Tue Apr 21 18:23:16 GMT+00:00 2015
            at android.widget.CalendarView.goTo(CalendarView.java:789)
            at android.widget.CalendarView.setMinDate(CalendarView.java:478)
            at android.widget.DatePicker.setMinDate(DatePicker.java:316)
            at com.teledna.moby.ui.Fragment_homeMenu$16.onCheckedChanged(Fragment_homeMenu.java:1124

请帮忙...

【问题讨论】:

  • 您检查的是哪个低版本?
  • @mukesh 你有没有找到任何解决方案。我有同样的问题。

标签: android android-activity datepicker android-datepicker datepickerdialog


【解决方案1】:
setMaxDate

在 Honeycomb 下不起作用。

【讨论】:

    【解决方案2】:

    扩展 DatePickerDialog 类以支持低于 API 级别 11 的 Android 版本。

    查看链接: How to make a Custom DatePicker control with maximum and minimum date range in Android application

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-08
      • 1970-01-01
      • 1970-01-01
      • 2023-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多