0

好的,所以从我的简单小部件中,我有一个按钮可以打开应用程序的主要意图。

Intent active = new Intent(context, Home.class);
        active.setClassName(Global.appclass, Global.appclass + Global.appEntryPoint); 
        active.putExtra("WidgetInput", mValue);

        PendingIntent actionPendingIntent = PendingIntent.getActivity(context,1, active, 0);
        remoteViews.setOnClickPendingIntent(R.id.btnWidgetValue, actionPendingIntent);
        appWidgetManager.updateAppWidget(thisWidget, remoteViews);

这个意图是透明的,只有一个编辑文本框和确定按钮。当有人按下确定按钮时,我希望它返回到小部件。

但是,如果应用程序在用户按下小部件上的按钮之前正在运行,那么透视意图会加载到主应用程序的顶部,因此您可以在后台看到主应用程序屏幕。我如何关闭所有意图,除了我正在加载的意图。

希望我能解释清楚。

目的是为主屏幕小部件提供一个输入框,但它看起来就在主屏幕上方,没有其他任何东西,如果主应用程序没有在后台运行,它就可以完美运行。

提前致谢。

4

1 回答 1

0

好的,我需要做的就是为 Intent 使用这两个标志,这样可以确保新的 Intent 是唯一运行的。

active.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP| Intent.FLAG_ACTIVITY_SINGLE_TOP);
于 2012-08-24T07:33:40.743 回答