java - 在 Android 中,如何启动一个 Activity 或将该 Activity 置于栈前(如果该 Activity 已在堆栈中)?

标签 java android android-intent android-activity android-pendingintent

在 Android 中,如何启动一个 Activity 或将该 Activity 置于栈顶(如果该 Activity 已在堆栈中)?

到目前为止,我知道开始一个新 Activity myActivity,如下面的代码所示。但我不想打开同一个类的第二个副本,如果它已经在堆栈上打开的话。那么我如何检查堆栈中是否存在如下所示的 Activity ,如果存在,则将其置于前面。如果没有,请打开一个新 Activity ,如下所示

Intent intent = new Intent(myActivity.this,
        myActivity.class);
startActivity(intent);

最佳答案

当您想要开始新的 Activity 时,在您的 Intent 中使用标志

http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_REORDER_TO_FRONT

Intent intent = new Intent(myActivity.this,
        myActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);

关于java - 在 Android 中,如何启动一个 Activity 或将该 Activity 置于栈前(如果该 Activity 已在堆栈中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26997163/

相关文章:

Android - VideoView - onTouch 的行为不符合预期

java - 将连字符分隔的单词(例如 "do-some-stuff")转换为较小的驼峰变体(例如 "doSomeStuff")的最优雅方法是什么?

java - 如何在android中逐字搜索

java - Android - 带有待处理 Intent 的多个警报,如何确定正在调用哪个 Intent ?

android - Notification onClick Intent 向 Activity 发送错误数据

android - Cordova InAppBrowser 不工作

java - Android 多行工具栏标题

java - Spring JUnit 测试 - 实例化问题

java - 更改 java JFrame 的图 block

java - 如何将菜单按钮添加到 ListView ,同时保留 onClickListener?