Android startActivityForResult实例详解

startActivityForResult用于两个activity之间的数据传递,Activity1传值给Activity2,Activity2再返回值给Activity1。
第一步:Activity1中:startActivityForResult(Intent intent, Int requestCode)
Intent intent = new Intent();
intent.setClass(Activity1.this,Activity2.class);
Bundle bundle = new Bundle();
intent.putExtras(bundle);
bundle.putString("abc", "bbb");
startActivityForResult(intent, 0);
// 跳转并要求返回值,0代表请求值(可以随便写,但一定要>=0)
第二步:Activity2中:setResult(int resultCode, Intent intent)回传数据时采用setResult方法,并且之后Activity2中要调用finish方法。
Intent intent = this.getIntent();
Bundle bundle = intent.getExtras();
String bbb=bundle.getString("abc");//接收A的数据
bundle.putString("aaa", "back");//返回给A的数据
intent.putExtras(bundle);
this.setResult(Activity.RESULT_OK, intent);
//1、结果码可以自定义但必须大于等于0,
//如果B子模块可能有几种不同的结果返回,
//可以用这个参数予以识别区分。还有个特殊的 RESULT_OK 值,没有特殊情况用它就好了。
//返回码可以是ESULT_CANCELED, RESULT_OK, or any custom values starting at RESULT_FIRST_USER。
//如果,调用的child activity失败,这个parent activity 将会收到的返回码是RESULT_CANCELED.
//2、intent为A传来的带有Bundle的intent,当然也可以自己定义新的Bundle的intent
this.finish();
//Activity2调用finish()方法之后才能返回数据到Activity1
第三步:Activity1中:返回数据,重写onActivityResult(int requestCode, int resultCode, Intent intent)
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 0 && resultCode == Activity.RESULT_OK) {
Bundle bundle = data.getExtras();
gameView.backString = bundle.getString("aaa");
Toast.makeText(this, backString, Toast.LENGTH_SHORT).show();
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# Android
# startActivityForResult
# startActivityForResult详解
# Android startActivityForResult的调用与封装详解
# Android startActivityForResult的基本用法详解
# Android利用startActivityForResult返回数据到前一个Activity
# Android startActivityForResult和setResult的区别
# Android基础之startActivityForResult()的用法详解
# Android startActivityForResult()代替方案示例
# 返回值
# 有个
# 将会
# 可以用
# 希望能
# 能有
# 几种
# 自定义
# 重写
# 跳转
# 谢谢大家
# 用它
# 第二步
# 中要
# 第三步
# 回传
# 就好了
# 求值
# bbb
相关文章:
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
如何高效利用200m空间完成建站?
如何基于云服务器快速搭建个人网站?
如何选择高效可靠的多用户建站源码资源?
如何快速搭建高效WAP手机网站?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
Python文件管理规范_工程实践说明【指导】
如何在阿里云虚拟服务器快速搭建网站?
建站三合一如何选?哪家性价比更高?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
潮流网站制作头像软件下载,适合母子的网名有哪些?
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
Bpmn 2.0的XML文件怎么画流程图
如何通过NAT技术实现内网高效建站?
html制作网站的步骤有哪些,iapp如何添加网页?
如何通过远程VPS快速搭建个人网站?
制作网页的网站有哪些,电脑上怎么做网页?
如何在Windows 2008云服务器安全搭建网站?
建站之星多图banner生成与模板自定义指南
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
网站制作话术技巧,网站推广做的好怎么话术?
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
如何用免费手机建站系统零基础打造专业网站?
建站之星微信建站一键生成小程序+多端营销系统
电商网站制作价格怎么算,网上拍卖流程以及规则?
高性价比服务器租赁——企业级配置与24小时运维服务
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
山东云建站价格为何差异显著?
制作旅游网站html,怎样注册旅游网站?
建站之星3.0如何解决常见操作问题?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
建站主机服务器选购指南:轻量应用与VPS配置解析
如何通过虚拟机搭建网站?详细步骤解析
如何用花生壳三步快速搭建专属网站?
建站之星如何保障用户数据免受黑客入侵?
如何在阿里云部署织梦网站?
已有域名如何快速搭建专属网站?
陕西网站制作公司有哪些,陕西凌云电器有限公司官网?
网站制作网站,深圳做网站哪家比较好?
如何高效配置香港服务器实现快速建站?
广州商城建站系统开发成本与周期如何控制?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
金*站制作公司有哪些,金华教育集团官网?
建站VPS配置与SEO优化指南:关键词排名提升策略
公司网站制作价格怎么算,公司办个官网需要多少钱?
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
C++如何使用std::optional?(处理可选值)
香港服务器网站卡顿?如何解决网络延迟与负载问题?
网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?
*请认真填写需求信息,我们会在24小时内与您取得联系。