我有一个应用程序可以启动一系列以对话框为主题的活动,我希望能够一次将它们全部弹出并返回到主要活动。我查看了现有的问题,例如:
并在此基础上提出了这个:
Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
这在功能上有效,但我遇到的问题是,当它被执行时,以对话框为主题的活动后面的屏幕会变黑一秒钟,然后最终将对话框设置为动画。如果我使用后退按钮手动弹出这些活动,则不会发生这种情况。
在 LogCat 中,我可以看到当我使用上述Intent
方法弹出对话框时,主要活动被破坏并重新创建,而当我只使用后退按钮时,onDestroy
andonCreate
方法不运行。有什么方法可以防止主要活动以这种方式显式重新启动?