从意图返回结果

startActivity()方法调用还有一个活动,但并没有返回结果给当前活动。此时如想从一个活动中回传数据,就要使用startActivityForResult()方法。

点此获取完整代码~                                                                   

1、使用上一篇中创建的项目,在secondactivity.xml文件里加入�文本框和button,代码例如以下:

    <TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:text="Please enter your name" /><EditTextandroid:id="@+id/txt_username"android:layout_width="fill_parent"android:layout_height="wrap_content" /><Buttonandroid:id="@+id/btn_OK"android:layout_width="fill_parent"android:layout_height="wrap_content"android:onClick="onClick"android:text="OK" />

2、在SecondActivity.java文件里加入�onClick()方法,代码例如以下:

    public void onClick(View v) {Intent data = new Intent();EditText txt_username = (EditText) findViewById(R.id.txt_username);// 使用setData()方法使用一个Intent对象回传数据data.setData(Uri.parse(txt_username.getText().toString()));// setResult()方法设置结果码和回传给调用活动的数据setResult(RESULT_OK, data);// 关闭Activityfinish();}

3、在MainActivity.java文件里加入�例如以下代码:

在onClick()方法中:

       startActivityForResult(new Intent(this, SecondActivity.class),request_Code);// 此方法调用一个活动并等待从此活动返回结果:传入Intent对象和请求码(仅为一个整数值,用于标识正在调用的活动)

自定义的onActivityResult()方法:

 // 当一个活动返回时,必须调用自己实现的onActivityResult()方法public void onActivityResult(int requestCode, int resultCode, Intent data) {if (requestCode == request_Code) {// 检验请求码if (resultCode == RESULT_OK) {// 检验结果码Toast.makeText(this, data.getData().toString(),Toast.LENGTH_SHORT).show();}}}

4、执行,效果例如以下:

点击button:

输入名字,点击OK:

总结:

1、调用onstartActivityForResult()方法并设置好请求码;

2、在被调用活动中,通过Intent对象回传数据并设置结果码(setData()方法和setResult()方法);

3、在调用活动中,自定义onActivityResult()方法,先校验请求码和结果码,再进行其他处理。

转载于:https://www.cnblogs.com/hrhguanli/p/3836975.html

Android学习笔记(十一)——从意图返回结果相关推荐

  1. 好记性不如烂笔杆-android学习笔记十一 Service的应用

    23,//Service的应用 <1>//manifest.xml对service注册 <service android:name=".FirstService" ...

  2. Pro Android学习笔记(三三):Menu(4):Alternative菜单

    什么是Alternative menu(替代菜单) 举个例子,Activity显示一个文本文件.如果用户想对文本文件进行编辑,Activity不提供编辑能力,但可由其他activity或者其他应用提供 ...

  3. Android学习笔记:Android基础知识点(不断更新中)

    1.Android学习笔记:OkHttp 2.Android学习笔记:更新UI的方法(UI线程和非UI线程) 3.Android学习笔记:Volley 4.Android学习笔记:Handler 5. ...

  4. Android学习笔记21:ImageView获取网络图片

    Android平台有3种网络接口可以使用,它们分别是:java.net.*(标准java接口).org.apache(Apache接口)和android.net.*(Android网络接口).本文将使 ...

  5. Android学习笔记26:图片切换控件ImageSwitcher的使用

    在Windows操作系统中,要查看多张图片,可以通过使用"Windows照片查看器"在"上一张"和"下一张"之间切换,进行多张图片的浏览. ...

  6. Android学习笔记36:使用SQLite方式存储数据

    在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...

  7. 吴恩达《机器学习》学习笔记十一——神经网络代码

    吴恩达<机器学习>学习笔记十一--神经网络代码 数据准备 神经网络结构与代价函数· 初始化设置 反向传播算法 训练网络与验证 课程链接:https://www.bilibili.com/v ...

  8. Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)

    Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它 ...

  9. Vue学习笔记(十一)

    1.Vue学习笔记(十一) 文章目录 1.Vue学习笔记(十一) 1.1Vue_配置代理_方式 1.1.0演示问题 1.1.1运行node server1 1.1.2运行node server2 1. ...

  10. Android学习笔记之在图片特效

    1.涂鸦(能清屏) HandWritingActivity.java [java] view plaincopy package xiaosi.handWriting; import android. ...

最新文章

  1. python列表按照指定顺序排序-Python常见排序操作示例【字典、列表、指定元素等】...
  2. 夏日炎炎,请照顾好你的电脑
  3. ubuntu16.04 安装jdk
  4. php根据手机号码获取省份
  5. golang 1.9 sp MySQL_Golang-使用mysql
  6. Gym102832K. Ragdoll(CCPC长春)
  7. 设计模式C++实现(6)——适配器模式
  8. C++学习_第1章_从C到C++
  9. 哈啰出行完成新一轮2.8亿美元融资 阿里首次入股
  10. .Net IOC框架入门之二 CastleWindsor
  11. F7-Nginx虚拟主机Server
  12. 图文展示目标检测的现代发展历史
  13. C语言实现 Base64 和 Base32 编解码
  14. openwrt nas_【群晖】用群晖虚拟机安装New Pi(OpenWRT)软路由系统
  15. pycharm如何打开历史_如何在pycharm中反转控制台历史顺序以进行复制粘贴?
  16. ArcGIS 缓冲区与叠加分析
  17. lsm mysql_一文了解数据库索引:哈希、B-Tree 与 LSM
  18. 翁帆给杨振宁的情书(中英文对照)
  19. 测试开发进阶——常用中间件概念——JDBC——连接数据库理解
  20. 搭建阿里云专有网络VPC

热门文章

  1. ubuntu上matlab2014a修改成windows方式快捷键
  2. Keras中的时间分布层TimeDistributed Layer使用教程
  3. 零基础学启发式算法(6)-蚁群算法 (Ant Colony Optimization, ACO)
  4. C++ tbb::atomic<bool> 声明、读取load、重新赋值store
  5. C++ const,static,inline
  6. kubernetes视频教程笔记 (3)-Pod及其网络通讯方式
  7. Kubernetes 小白学习笔记(10)--搭建一个kubernetes集群-组建节点网络
  8. thinkphp count distinct
  9. Unity3D(一) 操作界面及游戏常识
  10. 正则表达式在java中的用法