在Android 2.2中添加日历和事件

前端之家收集整理的这篇文章主要介绍了在Android 2.2中添加日历和事件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想要的:我想在 Android 2.2中添加日历事件.

我有什么:我使用以下代码添加了一个事件

Uri calendars = Uri.parse("content://com.android.calendar/events");
    Cursor managedCursor = managedQuery(calendars,null,null);

    startManagingCursor(managedCursor);
    managedCursor.moveToFirst();

    String ID = null;

    do
    {
        ID = managedCursor.getString(managedCursor.getColumnIndexOrThrow("_id"));
    } 
    while (managedCursor.moveToNext());
    managedCursor.close();      

    int NewID = Integer.parseInt(ID) + 1;

    ContentValues event = new ContentValues();
    event.put("calendar_id",NewID);  // --- Some confusion Here with the ID,// --- not sure how to use it here
    event.put("title","New Event Title");
    event.put("description","Event Desc");
    event.put("eventLocation","Somewhere");

    long startTime = System.currentTimeMillis() + 1000 * 60 * 60;
    long endTime = System.currentTimeMillis() + 1000 * 60 * 60 * 2;

    event.put("dtstart",startTime);
    event.put("dtend",endTime);

    event.put("allDay",0); // 0 for false,1 for true
    event.put("eventStatus",1);
    event.put("visibility",0);
    event.put("transparency",0);
    event.put("hasAlarm",1 for true

    Uri eventsUri = Uri.parse("content://com.android.calendar/events");
    Uri insertedUri = getContentResolver().insert(eventsUri,event);

问题是什么:
到目前为止,我已成功在指定的日期时间添加单个事件,显然NewID的角色对我来说是可疑的.当我尝试添加其他一些事件时,我得到返回的Uri insertedUri,它会在URI的末尾显示添加的ID.但我无法在设备上看到任何此类事件.可能是我对日历和事件的理解存在一些问题,或者两者及其ID的差异.请指导我错过或做错了什么.

问候,
Khawar

解决方法

大多数代码都很好,你只需要了解一些关于日历的概念.实际上Android中有多种日历类型.

要遍历所有日历,请使用以下Uri for 2.2:

Uri calendars = Uri.parse("content://com.android.calendar"+ "/calendars");

获得’id’和’name’的值,你就会得到这个想法.

NewID's role is suspicIoUs to me

您的插入代码很好,您只需要提供要插入任何事件的日历的ID.

我仍然相信即使我自己也需要学习很多,所以如果你有什么要说或纠正的话,我们非常欢迎你.以下链接帮助我:

Working with Android Calendars

Accessing Calendars events without using gdata api

原文链接:https://www.f2er.com/android/315190.html

猜你在找的Android相关文章