单击通知后修改活动

时间:2010-09-23 19:44:45

标签: android

我有一个正常的通知系统,如下所示:

Notification notification new Notification(
        R.drawable.alerts_notification,
        alertTitle,
        System.currentTimeMillis());
Intent intent = new Intent(mContext, MyActivity.class);
intent.setAction(MyActivity.ONE_ACTION);
PendingIntent pi = PendingIntent.getActivity(mContext, 0, intent, 0);
mNotifMan.notify(ID, notification);

请注意,我使用ONE_ACTION作为意图的操作。我所做的是验证活动上的操作并选择其中一个标签(它是TabActivity)。

如果活动已关闭,那么一切正常,因为Intent会打开活动,然后我会根据Intent中的操作决定做什么。但是,如果活动已经打开,它会启动一项新活动。另一方面,如果我添加标记Intent.FLAG_ACTIVITY_SINGLE_TOP,活动不会启动两次,但我也不能选择标签。

那么,如何通过点击通知来选择标签?

2 个答案:

答案 0 :(得分:0)

让您的意图打开您的标签活动,并在其中添加一个表示标签的额外内容。当您检测到操作恢复时,请在选项卡控制器上获取句柄并通过代码更改选项卡。

答案 1 :(得分:0)

好的,我发现了怎么做......似乎我没有误读文档。我做的是:

  1. 将其添加到AndroidManifest.xml文件中的活动:android:launchMode="singleInstance"
  2. 覆盖活动上的onNewIntent(Intent intent)方法,并将所有逻辑放在一起以选择标签等。
  3. 使用标记Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT
  4. 启动intent

    @schwiz,谢谢你的回答。