在日历中选择一些日期进行初始化

时间:2019-02-18 10:13:03

标签: android android-calendar android-datepicker android-date

我在Android中使用CalenderView。我有一个预定义日期列表,为["2019-02-15","2019-02-16","2019-02-17"]。日历初始化并显示在Activity/fragment上后,我希望选择此日期。如何实现此目的。
我正在以这种方式初始化日历

calender=v.findViewById(R.id.cal);
   calender.setMinDate(System.currentTimeMillis()-1000);  

如何实现?

2 个答案:

答案 0 :(得分:0)

查看Android API参考,您会发现以下功能:

CalendarView.setDate(long date)

在TimeZone.getDefault()时区中以毫秒为单位设置从1970年1月1日00:00:00开始的选定日期。 https://developer.android.com/reference/android/widget/CalendarView.html#setDate(long)

因此,您应该致电:

calender.setDate(long date);

为了获得毫秒数,您应该首先解析日期字符串,然后将其转换为毫秒数。

此外,我不确定,我不认为一次可以选择多个日期。

答案 1 :(得分:0)

您不能在android的默认CalendarView中禁用特定日期,因为您必须派生该小部件并进行自定义。然后另一种选择是使用第三方库,例如

material-calendarview

使用此库,您可以轻松地禁用自定义日期并应用自定义背景颜色等。

Material-Calendar-View

这也是另一个第三方选项,提供多个日期选择,依此类推。