我正在使用MaterialCalendarView库,我想选择事件日期有问题(没有被用户在运行时选择),这将是多个,阅读文档后,我看到四个案例。
1.选择模式无
1.选择_模式_单次
1.选择模式范围
1.选择_模式_多重
我使用SELECTION_MODE_NONE,因为我不想让用户选择日期。我尝试了这个,但它没有显示我选择的日期。
private MaterialCalendarView materialCalendarView;
materialCalendarView = view.findViewById(R.id.newCal);
Calendar calendar = Calendar.getInstance();
calendar.set(2017, 12, 1);
calendar.set(2017, 12, 7);
calendar.set(2017, 12, 8);
calendar.set(2017, 12, 9);
calendar.set(2017, 12, 10);
materialCalendarView.addDecorator(new CurrentDayDecatator(getActivity()));
materialCalendarView.setDateSelected(calendar, true);
materialCalendarView.setSelectionMode(MaterialCalendarView.SELECTION_MODE_NONE);
如何实现呢?我哪里错了?
更新:采取欧麦尔和曼尼登录后,我更新了我的代码如下:
materialCalendarView.setSelectionMode(MaterialCalendarView.SELECTION_MODE_NONE);
Calendar calendar = Calendar.getInstance();
calendar.set(2017, 12, 14);
Calendar calendar2 = Calendar.getInstance();
calendar.set(2017, 12, 15);
Calendar calendar3 = Calendar.getInstance();
calendar.set(2017, 12, 16);
Calendar calendar4 = Calendar.getInstance();
calendar.set(2017, 12, 17);
materialCalendarView.addDecorator(new CurrentDayDecatator(getActivity()));
materialCalendarView.setDateSelected(calendar, true);
materialCalendarView.setDateSelected(calendar2, true);
materialCalendarView.setDateSelected(calendar3, true);
materialCalendarView.setDateSelected(calendar4, true);
因此,现在我只获得最后选择的日期calendar4。但我仍然无法选择多个日期。默认情况下,materialCalendarView选择今天的日期。
3条答案
按热度按时间fruv7luv1#
您正在日历对象的同一示例上设置日期。您需要多个日历对象,然后将这些对象设置为
materialCalenderView
xdnvmnnf2#
好了,在做了很多调整和Manny和Umar的建议之后,我终于找到了在materialCalendarView中设置多天的方法。
1.我不想让用户从日历中选择日期,所以在我的代码中添加了这一行:
1.现在我想设置多个日期,为此我创建了多个日历对象,并像这样填充日期...
1.最后,它选择了多个日期,但是它也选择了今天的日期,这不是问题。但是现在当我把月份输入为12(十二月)时,它显示的是下个月12+1,这意味着明年的一月。因此,我传递了一个小于我想要的值。
最终代码:
谢谢曼尼和欧麦尔:)
7y4bm7vi3#
我正在试用这个库,遇到了这个问题。似乎这个库已经更新,这里提供的解决方案不再工作。
这是更新后的代码,在Kotlin里)