startActivityForResult 简介
- 博客分类:
- Android嵌入式开发
依次打开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了。
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了。
发表评论
-
startActivityForResult
2011-03-29 15:49 1095startActivityForResult 方法-- ... -
史上最全的Android的Tab与TabHost讲解
2011-03-28 11:22 1526Tab与TabHost 这就是Tab,而盛放Tab的 ... -
Android对话框
2011-03-25 11:21 1073Android 对话框(Dialog)大全 ... -
PreferenceActivity详解
2011-03-25 11:15 1393为了引入这个概率 首先从需求说起 即:现有某Activity专 ... -
TCP/UDP/HTTP
2011-03-25 11:09 1075先来一个讲TCP、UDP和HTTP ... -
9png
2011-03-25 11:08 1860今天学习了用9png图来优化横屏竖屏的UI,使用sdk自带的工 ... -
Notification
2011-03-25 11:07 867Android系统的状态栏(Status Bar)中有一个创新 ... -
一些技巧
2011-03-25 11:03 7341:查看是否有存储卡插入 String status=Envi ... -
布局像素单位
2011-03-25 11:03 775Android的layout文件中有时候可能会指定具体的单位, ... -
使用ActivityGroup来切换Activity和Layout
2011-03-25 11:02 1071在一个主界面中做Activity切换一般都会用TabActiv ... -
activitygroup
2011-03-25 11:01 1632说说tabhost和activitygroup 最近 ... -
线程
2011-03-25 11:01 964今天在论坛上看到一些关于线程的帖子,我觉得与我理解的有些差异, ... -
类级框架
2011-03-25 11:00 703类集框架:Collection,Map,Iterator,En ... -
Intent打电话
2011-03-25 11:00 1165intent英文意思是意图,pending表示即将发生或来临的 ... -
Intent Uri
2011-03-25 10:59 1016进入联系人页面 1.Intent intent = new I ... -
Service
2011-03-25 10:59 895一、Service的概念 Service是Android程序中 ... -
Broadcast Receiver
2011-03-25 10:56 1877一、Broadcast Receiver简介 Android中 ... -
ContentProvider MIME类型
2011-03-25 10:55 1191Android程序的主要4部分 ... -
ContentProvider-1查询
2011-03-25 10:55 1181今天看了android的官方文档中ContentProvide ... -
ContentProvider-2modify data:insert,update,delete
2011-03-25 10:54 1151今天补充关于modify data ...
相关推荐
startActivityForResult过时.md
使用startActivityForResult回传数据
介绍了StartActivityForResult的运用,并总结了一些问题及答案,可供初学者参考,代码无误,放心运行!
startActivityForResult
3个方法的介绍和使用 startActivityForResult(Intent intent, int requestCode ) onActivityResult(int requestCode ,int resultCode, Intent data) setResult(int resultCode,intent intent)
Android之Intent通过startActivityForResult方法启动新Activity
一种 startActivityForResult 更简单流程
startActivityForResult获得通讯录中电话信息
关于startActivity被大家忽略的 Fragment中的startActivityForResult方法
startActivityForResult使用方式,代码比较简单
这里实现的效果是,点击a Activity后,屏幕会跳转到手机的通讯录,任意选择点击一个通讯录中的联系人,则从通讯录Activity跳回到a Activity并在a Activity上显示你刚才选择通讯录联系人的名字。
使用StartActivityForResult进行Activity跳转传值的小例子
定义了4个Activity,主activity跳转到其他2个时附带String good,第二个在接收到数据后将String +"boy"后返回给主Activity并Toast;第三个在接收到数据后将String +"boy&girl"后返回给主Activity并Toast。...
NULL 博文链接:https://duduli.iteye.com/blog/1422558
NULL 博文链接:https://zhanglimijavaeye.iteye.com/blog/965433
基于RxPermissions框架思想,在使用startActivityForResult可以不重写onActivityResult回调
在Activity的四种不同的启动模式下,对于startActivityForResult方法的影响。什么时候可以收到回传数据。
startActivityForResult
NULL 博文链接:https://676744379-qq-com.iteye.com/blog/1122436