是否可以使用FLAG_ACTIVITY_CLEAR_TOP从非活动类启动活动?
我有一个非Activity类,在某些条件下,需要启动一个活动的意图。我现在正在这样做:
Intent newIntent = new Intent(context, myActivity.class);
newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(newIntent);
这有效,但我不希望将活动作为新任务启动。相反,我想使用FLAG_ACTIVITY_CLEAR_TOP,但这给了我以下运行时System.err:
从Activity上下文外部调用startActivity()需要FLAG_ACTIVITY_NEW_TASK标志。这真的是你想要的吗?
答案 0 :(得分:1)
您可以组合标志(即:使用Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP
)。
但是,如果现有任务中没有myActivity
的活动(未完成)实例,则它不会清除任何内容,只会在其上创建myActivity
的新实例。堆栈顶部。