事件更新后Android日历设置错误日期

时间:2015-02-07 00:47:37

标签: java android android-calendar

我需要更新日历活动的说明。

这是我的代码:

ContentValues values = new ContentValues();
values.put(Events.DESCRIPTION, "my description");
Uri updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventId);
int update = mContentResolver.update(updateUri, values, null, null);

我在调用代码之前和之后写入logcat:

之前(对我而言):

  

DTSTART = 07/02/2015 00:00:00
  DTEND = 07/02/2015 23:59:59

之后(错误):

  

DTSTART = 06/02/2015 01:00:00
  DTEND = 07/02/2015 01:00:00

所以我的活动被移到了前一天。 为什么会发生这种情况?我该如何解决?

1 个答案:

答案 0 :(得分:1)


将DTSTART和DTEND与您要更新的说明一起传递,这将解决问题,但请记住,如果发生重复事件,则不允许使用DTEND,因此请添加检查

ContentValues values = new ContentValues();
values.put(Events.DESCRIPTION, "my description");
values.put(Events.DTSTART,"your event start time in milliseconds here");
values.put(Events.DTEND,"your event end  time in milliseconds here");
Uri updateUri = ContentUris.withAppendedId(Events.CONTENT_URI, eventId);
int update = mContentResolver.update(updateUri, values, null, null); 

希望这会有所帮助:)