在我的程序中,我有一个在应用程序打开时启动的活动。如果我再开几个活动,我怎样才能回到主要活动?在intent过滤器中,活动的名称是“android.intent.action.MAIN”,它不允许我在其上调用startActivity()。我该怎么办?
答案 0 :(得分:7)
您可以通过Intent。
执行此操作Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
此Intent将启动用户已定义的启动器应用程序。请注意这一点,因为如果用户不期望这样,应用程序就会崩溃。
答案 1 :(得分:4)
Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
假设您的活动堆栈如下... MainActivity> Activity1>活性2> Activity3, 运行上面的代码将关闭活动1& 2并恢复MainActivity