从我的应用程序,我启动了一个意图的日历:
Calendar cal = Calendar.getInstance(); Intent intent = new Intent(Intent.ACTION_EDIT); intent.setType("vnd.android.cursor.item/event"); intent.putExtra("beginTime",cal.getTimeInMillis()); intent.putExtra("allDay",true); intent.putExtra("rrule","FREQ=YEARLY"); intent.putExtra("endTime",cal.getTimeInMillis()+60*60*1000); intent.putExtra("title","Some title"); startActivity(intent);
我无法弄清楚如果用户继续并保存此预先填充的日历项,如何获取eventID.我还想知道用户是否取消了日历提示,并没有保存这个新的预填充事件.
有什么相关的返回到onActivityResult(…),我可以用它作为日历事件的引用?我需要这个,所以我可以稍后找到/打开日历事件查看/编辑.
[更新:]是的,尝试onActivityResult(…),并且意图在任何用户交互之前打开日历后立即返回,所以这没有用.
我想通过使用意图(也允许用户从设备上可用的各种日历中选择)切换到日历应用程序,并避免从我的应用程序重新创建日历UE.此外,我还要至少支持Android 2.2.
解决方法
我想你可以通过onResume方法的beginTime来检查事件.肯定不会有2个事件具有相同的beginTime.