【问题标题】:How to disable past and future month in Android date picker?如何在 Android 日期选择器中禁用过去和未来月份?
【发布时间】:2017-07-20 20:58:32
【问题描述】:

我正在尝试创建一个 datePicker,其中将禁用前几个月和下个月。

【问题讨论】:

标签: android android-datepicker


【解决方案1】:

您应该指定禁用日期,

在 DATE_DIALOG_ID 内:

 Calendar calendar = Calendar.getInstance();
 int cyear = calendar.get(Calendar.YEAR);
 int cmonth = calendar.get(Calendar.MONTH);
 int cday = calendar.get(Calendar.DAY_OF_MONTH)

 DatePickerDialog datePickerDialog = new DatePickerDialog(this, mDateSetListener, cyear, cmonth, cday);
 datePickerDialog.getDatePicker().setMaxDate(System.currentTimeMillis());
 datePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);

要求最低 api 级别 11。

如果您使用的是日历,

datePickerDialog.getDatePicker().setMaxDate(calendar.getTimeInMillis());
datePickerDialog.getDatePicker().setMinDate(calendar.getTimeInMillis());

希望这对您的代码有用。

【讨论】:

  • 这会禁用除当前日期之外的所有日期。但我需要一个月内的所有日期。我只需要禁用将当前月份滑动到另一个月份。
【解决方案2】:

datePicker.setMaxDate(date.getTimeInMillis()); 最大 datePicker.setMinDate(date.getTimeInMillis()); 最少

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-25
    • 1970-01-01
    • 2014-12-01
    • 1970-01-01
    相关资源
    最近更新 更多