5

我认为这个问题说明了一切:是否可以在 Android 默认中显示事件CalendarView

我知道它是为小部件而不是真正的日历应用程序制作的,但我的应用程序不应该是日历应用程序。这只是我应用程序中的一个小功能,所以我认为 View 非常适合我的主张。我只能在其中查看事件,否则它对我来说是完美的。

我阅读了这个答案并尝试从以下位置覆盖 onDraw 方法CalenderView

@Override
protected void onDraw(Canvas canvas)
{
    p = new Paint();

    p.setColor(Color.RED);
    p.setStrokeWidth(10);

    super.onDraw(canvas);
    canvas.drawRect(0, 0, 100, 100, p);
}

但即使这段代码也不起作用,也没有显示矩形。其他 4 种方法是private所以我无法覆盖它们。我有什么其他想法可以解决这个问题吗?我不想使用图书馆,但如果没有其他方法,我正在寻找真正接近库存的东西CalendarView。或者也许我可以创建一个仅在我的应用程序中可见而不在其他日历应用程序中可见的日历文件?

4

2 回答 2

6

您不能在 default 中添加事件CalendarView。要么你需要定制,要么你需要使用一些库。

我已经多次使用Caldroid库。它易于实现且健壮。

在此处输入图像描述

于 2014-03-06T09:49:17.040 回答
3

无耻的插头。我还编写了自己的 android CalendarView,它允许您添加事件、侦听器、提供无限滚动并且是一个 gradle 项目:https ://github.com/SundeepK/CompactCalendarView 。

于 2015-06-10T11:54:24.277 回答