Android基础Activity篇——Intent返回数据给上一个活动
1.如果活动B要将数据返回给活动A,那么需要以下三步:
1.1在活动A中使用startActivityForResult()方法启动活动B。
1.2在活动B中使用setResult()方法传回Itent。
1.3在活动A中重写onActivityResult()方法。
2.在活动A中使用startActivityForResult()
button1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Toast.makeText(FirstActivity.this,"你点击了按钮一",Toast.LENGTH_SHORT).show();
Intent intent=new Intent(FirstActivity.this,SecondActivity.class);
startActivityForResult(intent,1);//注:第二个参数是请求码,用于之后活动A确认传回信息来源
}
});
3.在活动B中使用setResult()
button1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Intent intent=new Intent();//使用无参构造创建一个Intent对象,使用无参的原因是当前不需要使用Intent来切换到另外一个活动
intent.putExtra("data_return","这是来自B活动的信息,你好A" );//使用putExtra()放入要传回的信息
setResult(RESULT_OK,intent);//第一个参数表示返回处理的结果,一般使用RESULT_OK,第二个参数是一个带传回数据的Intent
finish();//销毁当前活动
}
});
4.在活动A中重写onActivityResult()
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch(requestCode){
case 1://使用switch和requestCode判断信息是否来源于B
if(resultCode==RESULT_OK){//判断返回结果是否成功
String returnedData=data.getStringExtra("data_return");//得到传回值,参数是之前活动B中起的名字
Log.d("FirstActivity",returnedData);//使用Log日志工具打印debug级别信息
}
break;
default:
}
}
5.如果用户通过back键返回
这里要注意的是如果用户不是通过我们设置的按钮返回活动A,而是使用BACK键,那么只需要在活动B中重写onBackPressed()方法。
@Override
public void onBackPressed() {
Intent intent=new Intent();
intent.putExtra("data_return","这是来自B活动的信息,你好A" );
setResult(RESULT_OK,intent);
finish();
}
Android基础Activity篇——Intent返回数据给上一个活动的更多相关文章
- android中返回数据给上一个活动,可以用来回显数据
(一)who简介:没错,就是startActivityForResult()方法,这个方法用来在活动被销毁的时候返回数据给上一个方法.参数说明: startActivityForResult(inte ...
- Android基础Activity篇——Intent向下一个活动传递数据
1.向下一个活动传递数据 String data ="bilibilbilbilbili"; Intent intent1=new Intent(this,secondActivi ...
- 【Android】7.0 Intent向下一个活动传递数据、返回数据给上一个活动
1.0 可以利用Intent吧数据传递给上一个活动,新建一个叫“hellotest01”的项目. 新建活动FirstActivity,勾选“Generate Layout File”和“Launche ...
- 【Android】Intent的使用-返回数据给上一个活动
第一个Activity A启动另外一个Activity B,B返回数据给A ============================================================= ...
- 【转】Andorid中Intent的使用-返回数据给上一个活动
第一个Activity A启动另外一个Activity B,B返回数据给A ============================================================= ...
- Android基础Activity篇——Intent
1.显式的Intent intent是用来各各活动之间切换的,还可以用来传递参数. 项目还是使用之前创建的ActivityTest项目,这里新建一个活动SecondActivity.java,并且勾选 ...
- Activity返回数据给上一个活动
1.在A这个Activity中以startActivityForResult(intent, requestCode)启动B这个Activity 2.在B这个Activity中setResult(re ...
- Android开发:向下一个activity传递数据,返回数据给上一个activity
1.向下一个activity传递数据 activity1 Button button=(Button) findViewById(R.id.button1); button.setOnClickLis ...
- Android基础Activity篇——其他隐式Intent
1.使用隐式Intent调用浏览器 修改FirstActivity中的按钮点击事件代码. Intent intent=new Intent(Intent.ACTION_VIEW); intent.se ...
随机推荐
- Sublime Text3安装、配置及常用插件(陆续补全中~)
一.安装Sublime Text3 网址:http://www.sublimetext.com/3 注册码:(sublime Text3汉化和激活注册码) ----- BEGIN LICENSE -- ...
- HDU6299 Balanced Sequence (多校第一场1002) (贪心)
Balanced Sequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- appium环境配置和一个例子
最近觉得appium挺火的,看了一些资料,本来想使用npm在线安装,遇见各种问题,先简单说一下: 在cmd窗口中使用命令:npm install -g appium安装,报无python的error, ...
- 项目笔记《DeepLung:Deep 3D Dual Path Nets for Automated Pulmonary Nodule Detection and Classification》(三)(上)结果评估
在(一)中,我将肺结节检测项目总结为三阶段,这里我要讲讲这个项目的第三阶段,至于第二阶段,由于数据增强部分的代码我始终看不大懂,先不讲. 结果评估的程序在evaluationScript文件夹下,这个 ...
- pytorch 加载mnist数据集报错not gzip file
利用pytorch加载mnist数据集的代码如下 import torchvision import torchvision.transforms as transforms from torch.u ...
- sublime 配置主题
默认主题可能看不清楚: 安装 PackageResourceViewer 安装Soda 主题 setting中加入 "theme": "Soda Light 3.subl ...
- TCP的粘包问题
什么是粘包 粘包指的是数据与数据之间没有明确的分界线,导致不能正确读取 应用程序无法直接操作硬件,应用程序想要发送数据则必须将数据交给操作系统,而操作系统需要同时为所有应用程序提供数据传输服务,也就意 ...
- pandas学习2(基础操作)
- JWT(JSON Web Token)原理简介
原文:http://www.fengchang.cc/post/114 参考了一下这篇文章:https://medium.com/vandium-software/5-easy-steps-to-un ...
- 关于WampServer一些配置修改
1.解决WAMP mysql中文乱码问题(在mysql的my.ini文件中) 1).找到client字段并添加:default-character-set=utf8 2).找到mysql字段并添加: ...