用于显示活动的Android CalendarView

Kar*_*mil 26 android android-calendar calendarview

我想显示一个日历,其中包含与默认日历应用程序类似的日期使用不同颜色的事件.但我没有在默认日历视图中看到任何此类API.

任何人都可以指示我正确的方向如何继续这个?我应该扩展默认日历并添加我自己的功能吗?或者我应该使用带有PageViewer和片段的5x5文本框?

nas*_*nas 19

内置的CalendarView小部件不显示在月视图中更改日历单元格颜色的功能.查看来源.

您可以尝试以下方法:

  1. 从CalendarView扩展并自己实现onDraw.您将不得不重新实现所有现有的绘图行为,包括以下4种方法:

    protected void onDraw(Canvas canvas) {
        drawBackground(canvas);
        drawWeekNumbersAndDates(canvas);
        drawWeekSeparators(canvas);
        drawSelectedDateVerticalBars(canvas);
    }
    
  2. 实现您自己的CalendarView,允许自定义单元格.我建议这个项目是一个开始的好地方,因为它已经支持自定义单元格.

  • 有谁知道有什么库可以扩展Android的“ CalendarView”,从而可以轻松自定义Date单元格的可绘制性?我看到了很多建议的库,但是它们实现了自己的Calendar View,这些日历视图并未从Android的“ CalendarView”扩展而来。 (2认同)
  • 目前没有 `onDraw` 方法。 (2认同)

小智 13

上个月,我可以使用Caldroid https://github.com/roomorama/Caldroid实现一个小日历视图.

它使用起来很灵活,并且onDraw从按照实现方式获取自定义日历视图并不困难CalendarView.

检查我创建的视图(只需按照文档):

使用Caldroid自定义日历视图

当然,你可以超越它.


Sun*_*Sun 5

我编写了自己的CalendarView,就像在Google日历中看到的那样.提供在月份,听众,添加事件之间滚动的能力,并且是一个gradle项目:https://github.com/SundeepK/CompactCalendarView.它使用绘画来完成所有绘图,因此它很容易改变以做任何你想做的事情.