
private voID setEvent(){ long startMilis = 0; int mCalID = 1; long endMilis = 0; Calendar beginTime = Calendar.getInstance(); beginTime.set(2013,1,29,9,10); startMilis = beginTime.getTimeInMillis(); Calendar endTime = Calendar.getInstance(); endTime.set(2013,30,10,10); endMilis = endTime.getTimeInMillis(); ContentResolver cr = getContentResolver(); ContentValues values = new ContentValues(); values.put(Events.CALENDAR_ID,mCalID); values.put(Events.DTSTART,startMilis); values.put(Events.DTEND,endMilis); values.put(Events.Title,"Special Event"); values.put(Events.DESCRIPTION,"Group Activity"); values.put(Events.EVENT_TIMEZONE,"America/Los_Angeles"); Uri uri = cr.insert(Events.CONTENT_URI,values); Toast.makeText(this,"Event Added",Toast.LENGTH_LONG).show();} 这是我的代码片段,我想在AndroID日历中添加事件.代码工作正常.
但是在设备上测试时,指定的事件实际上并没有被添加,也没有出现在calendar.Code完全没有错误,我提供了必要的权限.
有人可以告诉我我在哪里做错了.
解决方法 如果没有错误,但事件未出现在日历中,我怀疑罪魁祸首是mCalID = 1.
设备可以有多个日历.不能保证ID == 1的那个是主要的那个(即使你使用了主要的那个,用户也可能在多个不同的日历中有事件 – 例如个人和工作).
所以,这取决于你想要做什么.你应该:
>使用主日历(具有IS_PRIMARY的日历,但请参见上面的警告),或
>让用户首先选择一个日历(仅当查询Calendars table时找到多个日历),然后再使用该calendar_ID.
以上是内存溢出为你收集整理的在Android日历中添加事件全部内容,希望文章能够帮你解决在Android日历中添加事件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)