使用materialdatetimepicker禁用日期集

时间:2018-02-12 17:41:25

标签: android datetime android-calendar android-datepicker

我正在使用materialdatetimepicker来自定义我的日历。 我的要求是我要禁用今天和接下来31天的所有日期。

我尝试了什么。

1 - 将最小日期设置为今天 - datePickerDialog.setMinDate(now);

2 - 从今天起31天的最长日期。 - datePickerDialog.setMaxDate(cal);

3 - 禁用两者之间的日期。 datePickerDialog.setDisabledDays(otherCalendars);

当我一起执行步骤1 2和3时,日历根本没有打开,应用程序冻结。

当我单独执行步骤(1,2)和3时,我得到了正确的结果。但我只想在接下来的31天显示并禁用它们。

这是我尝试过的代码。

我在哪里弄错了?非常感谢任何帮助。

        private DatePickerDialog datePickerDialog;

        DateTime startDateTime = new DateTime();
        DateTime endDateTime = new DateTime();
        endDateTime = endDateTime.plusDays(31);

        List<DateTime> otherDays = new ArrayList<>();
        while (startDateTime.isBefore(endDateTime)) {
            otherDays.add(startDateTime);
            startDateTime = startDateTime.plusDays(1);
        }

        Calendar[] otherCalendars = new Calendar[otherDays.size()];
                for (int count = 0; count < otherDays.size(); count++) {
                    otherCalendars[count] = otherDays.get(count).toGregorianCalendar();
                }

         datePickerDialog.setMinDate(now);
         Calendar cal = Calendar.getInstance();
         Date ddd = endDateTime.toDate();
         cal.setTime(ddd);
         datePickerDialog.setMaxDate(cal);
         datePickerDialog.setDisabledDays(otherCalendars);

由于 [R

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,并在这里Disable whole week except weekend in calender 找到了解决方案[禁用整个星期除外周末]

我使用# if img is reshaped to [N, H, W, C] img # tensor of dimension [N, C] aud ans = torch.empty(N, H, W, dtype=torch.double) for batches in range(img.shape[0]): for i in range(img.shape[1]): for j in range(img.shape[2]): ans[batches][i][j] = torch.dot(img[batches][i][j], aud[batches]) 类型为Calendar的列表 并填写我要禁用的天数。