android中返回数据给上一个活动,可以用来回显数据
(一)who
简介:没错,就是startActivityForResult()方法,这个方法用来在活动被销毁的时候返回数据给上一个方法。
参数说明:
startActivityForResult(intent, 1) 第一个参数是intent,第二个参数是请求码,用于判断数据的来源。
(二)what
现在有两个activity,activityA和activityB,activityA想activityB发送请求,让actiivtyB返回数据。
代码如下:
public class ActivityA extends AppCompatActivity {
private Button sendBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_a);
sendBtn = findViewById(R.id.send_btn);
sendBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(ActivityA.this, ActivityB.class);
//第一个参数是intent,第二个参数是请求码,随便定义,保证是唯一的就行
startActivityForResult(intent, 1);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//这里要通过请求码来判断数据的来源
switch (requestCode) {
case 1:
//判断请求的结果是否成功,resultCode == RESULT_OK,代表成功了
if (resultCode == RESULT_OK) {
String getData = data.getStringExtra("data");
Toast.makeText(ActivityA.this, getData, Toast.LENGTH_LONG).show();
}
break;
/**这里可以有多个requestcode**/
default:
}
}
}
下面是activityB
public class ActivityB extends AppCompatActivity{
private Button returnData;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_b);
returnData = findViewById(R.id.return_data);
returnData.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
//将要传给activityA的数据存放在intent中
intent.putExtra("data", "你好,time");
//第一个参数用于向上一个活动返回结果,一般有RESULT_OK和RESULT_CANCEL两个值,第二个参数把带有数据的intent传回去
setResult(RESULT_OK, intent);
finish();
}
});
}
}
注意:当用户点back键的时候,数据并没有回传回去,这时候就要重写onBackPressed()方法了
@Override
public void onBackPressed() {
Intent intent = new Intent();
intent.putExtra("data", "你好,time");
setResult(RESULT_OK, intent);
finish();
}
android中返回数据给上一个活动,可以用来回显数据的更多相关文章
- 【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.如果活动B要将数据返回给活动A,那么需要以下三步: 1.1在活动A中使用startActivityForResult()方法启动活动B. 1.2在活动B中使用setResult()方法传回Iten ...
- 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视图看见上一个活动的视图
先看一下我的效果图吧: 好大的图啊!!! 百度音乐由一个很酷的功能,当前的UI可以滑动,然后看见上一个活动的UI,当时顿时觉得百度的牛人好多啊,能将如此前沿的技术应用到app上.当然如果你熟悉了And ...
- Shell $?获取函数返回值或者上一个命令的退出状态
Shell $?获取函数返回值或者上一个命令的退出状态 来自:互联网 时间:2021-01-12 阅读:2 $? 是一个特殊变量,用来获取上一个命令的退出状态,或者上一个函数的返回值. 所谓退出状态, ...
- JSP第四篇【EL表达式介绍、获取各类数据、11个内置对象、执行运算、回显数据、自定义函数、fn方法库】
什么是EL表达式? 表达式语言(Expression Language,EL),EL表达式是用"${}"括起来的脚本,用来更方便的读取对象! EL表达式主要用来读取数据,进行内容的 ...
随机推荐
- ForkJoin简单示例
import java.util.concurrent.ExecutionException; import java.util.concurrent.ForkJoinPool; import jav ...
- 使用jstack排查线程问题
以一个例子来演示排查服务器cpu占用率过高的问题. 准备 将下面的代码文件上传到服务器上,然后使用javac编译,并使用java命令将程序跑起来. public class JStackCase { ...
- 设置intellij IDEA编辑框背景色
首先是打开idea开发工具,然后点击左上角的File,选择Settings设置 应用即时生效,无需重启idea
- Nginx1.6.0+MySQL5.6.19+PHP5.5.14(centos)
一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...
- vue 全局 js 方法
1.新增 getCurrentDataType.js 文件 import cookieUtils from '@/config/cookieUtils' function getCurrentData ...
- map简单用法
let familyNames = []; familyNames = res.Data.map(item=> { return item.ArgText });
- Oracle12c RAC数据导出至Oracle11g
一.Oracle12c导出数据 1.连接数据库 sqlplus / as sysdba 2.查看pdbs show pdbs; 3.切换pdb alter session set container= ...
- mybatis源码分析之02配置文件解析
该篇正式开始学习mybatis的源码,本篇主要学习mybatis是如何加载配置文件mybatis-config.xml的, 先从测试代码入手. public class V1Test { public ...
- django+nginx+uwsgi_cent0s7.4 部署
django+nginx+uwsgi_cent0s7.4 部署 几条命令 # 查看是否有 uwsgi 相关的进程 ps -aux|grep "uwsgi" # 杀死有关 uwsgi ...
- 从React Native到微服务,落地一个全栈解决方案
Poplar是一个社交主题的内容社区,但自身并不做社区,旨在提供可快速二次开发的开源基础套件.前端基于React Native与Redux构建,后端由Spring Boot.Dubbo.Zookeep ...