当我以编程方式创建日历事件时,我有一个奇怪的问题
它总是被称为生日日历(类型)我没有任何线索为什么它注意到这一点.
我使用的代码如下:Xamarin C#
ContentResolver cr = ((Activity)Forms.Context).ContentResolver;ContentValues values = new ContentValues();String eventUriString = "content://com.androID.calendar/events";//Insert Events in the calendar...values.Put(CalendarContract.Events.InterfaceConsts.CalendarID, 1);values.Put(CalendarContract.Events.InterfaceConsts.Title, Title);values.Put(CalendarContract.Events.InterfaceConsts.Status, 1);values.Put(CalendarContract.Events.InterfaceConsts.Description, description);values.Put(CalendarContract.Events.InterfaceConsts.Dtstart, GetDateTimeMS(year, month, day, hour, minute));values.Put(CalendarContract.Events.InterfaceConsts.Dtend, GetDateTimeMS(year, month, day, hour, minute));values.Put(CalendarContract.Events.InterfaceConsts.AllDay, allday ? "1" : "0");values.Put(CalendarContract.Events.InterfaceConsts.HasAlarm, hasalarm ? "1" : "0");values.Put(CalendarContract.Events.InterfaceConsts.Eventcolor, AndroID.Graphics.color.Green);values.Put(CalendarContract.Events.InterfaceConsts.EventTimezone, "GMT+" + zone + ":00");values.Put(CalendarContract.Events.InterfaceConsts.EventEndTimezone, "GMT+" + zone + ":00");cr.Insert(AndroID.Net.Uri.Parse(eventUriString), values);
请问有人有任何提示或想法可以指向正确的方向吗?
提前致谢.
解决方法:
下面回答的问题是旧请参考Pkosta’s答案,它提供了更准确的答案…
您必须将CalendarID值设置为3而不是1,这是默认的生日日历.
例如
values.Put(CalendarContract.Events.InterfaceConsts.CalendarID, 1);
改为
values.Put(CalendarContract.Events.InterfaceConsts.CalendarID, 3);
它为我解决了同样的问题.
总结以上是内存溢出为你收集整理的java – Android创建日历事件始终作为生日全部内容,希望文章能够帮你解决java – Android创建日历事件始终作为生日所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)