依次打开Activity A1--A2--A3--A4 这时候你如果想从第四个返回到第一Activity 的时候,
就用到了startActivityForResult 这个方法了。
startActivityForResult(intent, requestCode)
两个参数 一个是第一好的意图对象,另一个是请求代码。




A1 的 intent 定义是 Intent intent = new Intent(); intent.setClass(this,A2.class);
指定一个 int 作为 requestCode 比如 startActivityForResult(intent, 1);


A2 的 intent 定义是 Intent intent = new Intent(); intent.setClass(this,A3.class);
指定一个 int 作为 requestCode 比如 startActivityForResult(intent, 1);


A3 的 intent 定义是 Intent intent = new Intent(); intent.setClass(this,A4.class);
指定一个 int 作为 requestCode 比如 startActivityForResult(intent, 1);


A4 添加一个返回按钮 点击的事件里写
public void 点击事件{
//this.setResult(int resultCode)
this.setResult(10)
this.finish();
}


这时候点击A4的返回按钮时候,先设置 resultCode 给上一个 A3 来判断,然后关闭A4


关闭A4触发A3里面的方法,onActivityResult(int requestCode, int resultCode, Intent data)


在这个方法里面做判断就行了。
前两个参数分别是 我们设置的 requestCode 和 resultCode
代码如下
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1&& resultCode == 10){
this.setResult(10);
this.finish();
}
}


此方法先匹配 requestCode 和 resultCode 然后设置 resultCode 在关闭A3,想同的道理关闭A2


这样就返回A1了。

更多相关文章

  1. 安卓开发之 在应用中使用数据库
  2. Android(安卓)VOIP拨打电话机制分析
  3. Android中调用Paint的measureText()方法取得字符串显示的宽度值
  4. Android(安卓)studio button 按钮 四种绑定事件的方法【实例代码
  5. Android(安卓)RecyclerView —— 自定义分割线
  6. android创建optionsmenu的方法
  7. Android(安卓)注入Event
  8. Android之Activity的启动方式
  9. 解决Android中Fragment调用startactivityforresult不能返回结果

随机推荐

  1. Android进程启动流程(App启动)
  2. Androidの应用源码下载地址
  3. Android判断应用是否存在
  4. Android之文件&XML
  5. Android Media Framework 总纲
  6. Android Component 简介
  7. Android学习笔记之——UI组件
  8. Android(安卓)NDK开发配置NDK
  9. Android 获取wifi信号强度
  10. Android boot sequence (ANDROID-LEVEL :