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 ...
随机推荐
- [国家集训队]特技飞行 贪心BZOJ2697
题目背景 1.wqs爱好模拟飞行. 2.clj开了一家神犇航空,由于clj还要玩游戏,所以公司的事务由你来打理. 注意:题目中只是用了这样一个背景,并不与真实/模拟飞行相符 题目描述 神犇航空开展了一 ...
- FPGA实战操作(1) -- SDRAM(操作说明)
SDRAM是做嵌入式系统中,常用是的缓存数据的器件.基本概念如下(注意区分几个主要常见存储器之间的差异): SDRAM(Synchronous Dynamic Random Access Memory ...
- IE下 checkbox、radio等标签的label中的img点击无效(点击不能选中)问题解决
类似以下代码,点击图片不能选中checkbox <input id="dw_1" name="shape[]" value="Round&quo ...
- CSS3中的vh、vw及其应用场景
需求:我们项目的需求是 一.vh vw vw和vh是相对于视口(viewport)的宽度和高度.由于现在移动设备的屏幕尺寸之差别,如果仍然根据屏幕的物理分辨率来设计网页,效果很难统一,因此html ...
- 南昌大学航天杯第二届程序设计竞赛校赛网络同步赛 I
链接:https://www.nowcoder.com/acm/contest/122/I来源:牛客网 题目描述 小q最近在做一个项目,其中涉及到了一个计时器的使用,但是笨笨的小q却犯难了,他想请你帮 ...
- C#工具类之日期扩展类
/// <summary> /// DateTimeHelper /// </summary> public static class DateTimeHelper { /// ...
- Java中利用JFrame创建窗体
1. 一个简单例子: public class Test(){ public static void main(String[] args){ JFrame frame = new JFrame(); ...
- md5,base64加密
import java.security.MessageDigest; import org.apache.commons.codec.binary.Base64;import org.apache. ...
- java从笨鸟到菜鸟
链接别人的笔记 http://www.cnblogs.com/cugwx/p/3536840.html
- esper(1)-窗口概述
Time Window: Length Window: Time Batch Window: 带batch的是所有的都执行完后,在触发UpdateListener,如下边例子: public clas ...