2017-05-29 59 views
-1

我想以編程方式刪除calender事件。 我試過下面的代碼: int rows = getContentResolver()。delete(Uri.parse(「content://com.android.calendar/events」),「calendar_id =?」, new String [] {String。的valueOf(EVENTID)});使用這種Android系統日曆

回答

0

刪除事件:

ContentResolver cr = getContentResolver(); 
ContentValues values = new ContentValues(); 
Uri deleteUri = null; 
deleteUri = ContentUris.withAppendedId(CalendarContract.Events.CONTENT_URI, Long.parseLong(eventID)); 
int rows = getContentResolver().delete(deleteUri, null, null); 

這裏,行給你,受刪除操作的行數。用它來顯示特定事件是否被刪除。

+0

得到我們需要得到的URI的URI,可使用以下在我的崗位共享上述URI來完成: 烏里calendarURI = NULL; 嘗試if(android.os.Build.VERSION.SDK_INT <= 7){calendarURI = Uri.parse(「content:// calendar/events」);其他{ calendarURI = Uri.parse(「content://com.android.calendar/events」); } } catch(Exception e){ e.printStackTrace(); } – Nisha

+0

我在我的應用程序中使用上面的代碼,它工作得很完美。你只需要一個EVENTID來刪除它。 –

0

請嘗試以下功能:

Uri eventUri = ContentUris.withAppendedId(getCalendarUriBase(), eventID); 
getContentResolver().delete(eventUri, null, null); 

private Uri getCalendarUriBase() { 
Uri calendarURI = null; 
try { 
if (android.os.Build.VERSION.SDK_INT <= 7) { 
calendarURI = Uri.parse("content://calendar/events"); 
} else { 
calendarURI = Uri.parse("content://com.android.calendar/events"); 
} 
} catch (Exception e) { 
e.printStackTrace(); 
} 
return calendarURI; 
}