Android中打开多个Activity,返回到第一个Activity

问题:Android顺序打开多个Activity,如何返回到第一个Activity(一般为首页)?

情形:如 A 打开 B, B 打开 C, C 打开 D, 然后如果从 D 一步返回到 A,并清楚掉 B、C、D呢?

一个很笨的方法是:

  1. Intent intent= new Intent(this, 首页Activity.class);
  2. startActivity(intent);

Android开发过程中肯定会经常遇到要返回首页的情形,google当然想到了这一点,实现起来很简单,只要在打开的最后一个Activity中 设置Flag就可以回到第一个Activity,代码如下:

  1. Intent intent= new Intent(this, FirstActivity.class);
  2. intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  3. startActivity(intent);

PS: 如果intent对象包含FLAG_ACTIVITY_CLEAR_TOP 标记,当目标task中已存在与接收该intent对象的 activity类型相同的activity实例存在时,所有位于该activity对象上面的activity将被清空,这样接收该intent的 activity就位于栈顶,可以响应到来的intent对象。如果目标activity的运行模式为standard(默认),则目标activtiy也会被清空。因为当运行模式为standard时,总会创建新的activity对象来接收到来的intent对象。

时间: 2024-12-07 05:23:41

Android中打开多个Activity,返回到第一个Activity的相关文章

Android_打开多个Activity,返回到第一个Activity

正文 一.流程截图 二.问题说明 依次从登录到三级界面,然后退出回到登录界面. 三.解决办法 3.1 实现代码 三级界面调用如下代码: Intent intent = new Intent(context, LoginView.class);        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);        context.startActivity(intent); 3.2 代码说明 如果intent对象包含FLAG_ACTIVITY

笔记-Android中打开各种格式的文件(apk、word、excel、ppt、pdf、音视频、图片等)

打开后缀.apk的文件,即启动安装程序: //apkFilePath 文件路径 public void installAPK(String apkFilePath) { // 创建URI Uri uri = Uri.fromFile(new File(apkFilePath)); Intent intent = new Intent(Intent.ACTION_VIEW); // 设置Uri和类型 intent.setDataAndType(uri, "application/vnd.andro

【Android】Android中Service类onStartCommand的返回值有关问题(转)

@Override public int onStartCommand(Intent intent, int flags, int startId) { System.out.println("---------->>onStartCommand2"); return super.onStartCommand(intent, flags, startId); } Android开发的过程中,每次调用startService(Intent)的时候,都会调用该Service对象

Android中Service类onStartCommand的返回值问题

Android开发的过程中,每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,然后在onStartCommand方法中做一些处理.然后我们注意到这个函数有一个int的返回值,这篇文章就是简单地讲讲int返回值的作用. 从Android官方文档中,我们知道onStartCommand有4种返回值: START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但

Android官方入门文档[13]暂停和恢复一个Activity活动

Android官方入门文档[13]暂停和恢复一个Activity活动 Pausing and Resuming an Activity暂停和恢复一个Activity活动 This lesson teaches you to1.Pause Your Activity2.Resume Your Activity You should also read?Activities 这节课教你1.暂停您的Activity活动2.恢复您的Activity活动 你也应该阅读?Activity活动 Try it

Android官方入门文档[14]停止和重新启动一个Activity活动

Android官方入门文档[14]停止和重新启动一个Activity活动 Stopping and Restarting an Activity停止和重新启动一个Activity活动 This lesson teaches you to1.Stop Your Activity2.Start/Restart Your Activity You should also read?Activities 这节课教你1.停止您的Activity活动2.启动/重新启动您的Activity活动 你也应该阅读?

无废话Android之smartimageview使用、android多线程下载、显式意图激活另外一个activity,检查网络是否可用定位到网络的位置、隐式意图激活另外一个activity、隐式意图的配置,自定义隐式意图、在不同activity之间数据传递(5)

1.smartimageview使用 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"

Android学习路线(十二)Activity生命周期——启动一个Activity

先占个位置,过会儿来翻译,:p Unlike other programming paradigms in which apps are launched with a main()method, the Android system initiates code in an Activity instance by invoking specific callback methods that correspond to specific stages of its lifecycle. Th

在设置了android:parentActivityName后,点击子Activity返回键,父Activity总会调用OnDestroy()的解决方案

最近查了很久这个事情,分享给大家, 原理很简单,一个Activity在manifet里声明了android:parentActivityName:这时候通过Activity左上角的返回按钮点击返回, 启动声明的父Activity,总会先调用父Activity的OnDestroy方法,具体如下面所说: <activity android:name="com.example.helloworld.DisplayMessageActivity" android:label="