在调用外部意图(日历 api)并完成一些工作后,如何返回我的应用程序?

qkx*_*qkx 5 android android-widget android-intent android-pendingintent

我有一个带有几个按钮的主屏幕小部件。其中之一应该调用(电话)日历对话框来创建新事件。所以我向我的小部件按钮注册了监听器:

Intent intent = new Intent(Intent.ACTION_INSERT);
intent.setData(CalendarContract.Events.CONTENT_URI);
PendingIntent pi = PendingIntent.getActivity(this, 1, intent, PendingIntent.FLAG_UPDATE_CURRENT);
updateViews.setOnClickPendingIntent(R.id.btnAdd, pi); 
Run Code Online (Sandbox Code Playgroud)

当我在小部件中推送此按钮时,它会启动日历对话框来创建新事件 - 这是可以的。但是,在填写完所有字段并按日历中的“完成”后,我想返回到我的应用程序(或返回到我的小部件的主屏幕)。相反,我仍在日历应用程序中。怎么处理这个问题,或者有可能吗?

Wol*_*yer 3

您应该首先启动应用程序的 Activity,然后启动此意图。

日历应用程序存在问题。虽然它只应在从小部件启动时将活动添加到返回堆栈,但它始终这样做。看我发的这个问题:

http://code.google.com/p/android/issues/detail?id=28704

因此用户必须按“返回”两次。嗯,在手机上就是这样。如果我没记错的话(目前无法测试),在平板电脑上一切正常。