Android CalendarView设置了一个事件

时间:2017-04-11 10:31:00

标签: android calendarview

我正在使用CalendarView,我试图在日历用户上设置一个事件。 该应用程序打开带有Intent的defualt日历电话,用户在那里设置事件的时间,标题和位置。 我唯一的问题是我不知道如何使用它。 我应该使用OnDateChangeListener还是只使用Onclick? 我想要做的是获取用户设置的参数并在他的defualt日历上打开事件。

我使用此代码

    public void addEvent(String title,String location, long begin, long end) {
    Intent intent = new Intent(Intent.ACTION_INSERT)
            .setData(CalendarContract.Events.CONTENT_URI)
            .putExtra(CalendarContract.Events.TITLE, title)
            .putExtra(CalendarContract.Events.EVENT_LOCATION, location)
            .putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, begin)
            .putExtra(CalendarContract.EXTRA_EVENT_END_TIME, end);
    if (intent.resolveActivity(getPackageManager()) != null) {
        startActivity(intent);
    }
}

此外,我想知道"长期开始"和#"长尾"手段? 这是用户输入吗?

我希望我很清楚。

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码添加活动

Calendar cal = Calendar.getInstance();              
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra("beginTime", cal.getTimeInMillis());
intent.putExtra("allDay", true);
intent.putExtra("rrule", "FREQ=YEARLY");
intent.putExtra("endTime", cal.getTimeInMillis()+60*60*1000);
intent.putExtra("title", "A Test Event from android app");
startActivity(intent);

此处开始时间和结束时间是您为活动设置的提醒的开始和结束时间。

在清单中添加这些权限

<uses-permission android:name="android.permission.READ_CALENDAR" />
 <uses-permission android:name="android.permission.WRITE_CALENDAR" />