博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android Activity 之 startActivityForResult 的使用
阅读量:5912 次
发布时间:2019-06-19

本文共 1166 字,大约阅读时间需要 3 分钟。

hot3.png

 
依次打开Activity  A1--A2--A3--A4 这时候你如果想从第四个返回到第一Activity 的时候,就用到了startActivityForResult 这个方法了。
  1. startActivityForResult(intent, requestCode)
两个参数 一个是第一好的意图对象,另一个是请求代码。
A1 的 intent 定义是
  1. Intent intent = new Intent(); intent.setClass(this,A2.class);
指定一个 int 作为 requestCode 比如 startActivityForResult(intent, 1);
A2 的 intent 定义是
  1. Intent intent = new Intent(); intent.setClass(this,A3.class);
指定一个 int 作为 requestCode 比如 startActivityForResult(intent, 1);
A3 的 intent 定义是
  1. Intent intent = new Intent(); intent.setClass(this,A4.class);
指定一个 int 作为 requestCode 比如 startActivityForResult(intent, 1);
A4 添加一个返回按钮 点击的事件里写
  1. public void 点击事件{
  2.   //this.setResult(int resultCode)
  3.     this.setResult(10)
  4.   this.finish();
  5. }
这时候点击A4的返回按钮时候,先设置 resultCode 给上一个 A3 来判断,然后关闭A4
关闭A4触发A3里面的方法,onActivityResult(int requestCode, int resultCode, Intent data)
在这个方法里面做判断就行了。
前两个参数分别是 我们设置的 requestCode 和 resultCode
  1. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  2.   // TODO Auto-generated method stub
  3.   super.onActivityResult(requestCode, resultCode, data);
  4.   if(requestCode == 1&& resultCode == 10){
  5.     this.setResult(10);
  6.     this.finish();
  7.   }
  8. }

转载于:https://my.oschina.net/howaylee/blog/28917

你可能感兴趣的文章
jQery简单Tab选项卡效果
查看>>
Java Object类及其equals方法
查看>>
[摘录]为你的感情开个账户
查看>>
CHIL-ORACLE-修改密码
查看>>
java在线聊天项目 客户端登陆窗口LoginDialog的注册用户功能 修改注册逻辑 增空用户名密码的反馈 增加showMessageDialog()提示框...
查看>>
删除缓存
查看>>
在Unity(C#)下实现Lazy Theta*寻路
查看>>
数据获取以及处理系统 --- 功能规格说明书
查看>>
深入理解linux系统下proc文件系统内容
查看>>
axios 或 ajax 请求文件
查看>>
Mysql 备份与恢复
查看>>
nohup和&后台运行,进程查看及终止
查看>>
Apache2.2和Apache2.4中httpd.conf配置文件 权限的异同
查看>>
设计模式-简单工厂、工厂方法模式、抽象工厂模式详解
查看>>
利用Python进行文章特征提取(二)
查看>>
前端开发中同步和异步的区别
查看>>
HDU3627 set+map
查看>>
firefox 被劫持hao123 主页
查看>>
网络爬虫练习
查看>>
ASP.NET MVC 使用过滤器需要注意
查看>>