Android学习笔记(十一)——从意图返回结果
从意图返回结果
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学习笔记(十一)——从意图返回结果相关推荐
- 好记性不如烂笔杆-android学习笔记十一 Service的应用
23,//Service的应用 <1>//manifest.xml对service注册 <service android:name=".FirstService" ...
- Pro Android学习笔记(三三):Menu(4):Alternative菜单
什么是Alternative menu(替代菜单) 举个例子,Activity显示一个文本文件.如果用户想对文本文件进行编辑,Activity不提供编辑能力,但可由其他activity或者其他应用提供 ...
- Android学习笔记:Android基础知识点(不断更新中)
1.Android学习笔记:OkHttp 2.Android学习笔记:更新UI的方法(UI线程和非UI线程) 3.Android学习笔记:Volley 4.Android学习笔记:Handler 5. ...
- Android学习笔记21:ImageView获取网络图片
Android平台有3种网络接口可以使用,它们分别是:java.net.*(标准java接口).org.apache(Apache接口)和android.net.*(Android网络接口).本文将使 ...
- Android学习笔记26:图片切换控件ImageSwitcher的使用
在Windows操作系统中,要查看多张图片,可以通过使用"Windows照片查看器"在"上一张"和"下一张"之间切换,进行多张图片的浏览. ...
- Android学习笔记36:使用SQLite方式存储数据
在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...
- 吴恩达《机器学习》学习笔记十一——神经网络代码
吴恩达<机器学习>学习笔记十一--神经网络代码 数据准备 神经网络结构与代价函数· 初始化设置 反向传播算法 训练网络与验证 课程链接:https://www.bilibili.com/v ...
- Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)
Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它 ...
- Vue学习笔记(十一)
1.Vue学习笔记(十一) 文章目录 1.Vue学习笔记(十一) 1.1Vue_配置代理_方式 1.1.0演示问题 1.1.1运行node server1 1.1.2运行node server2 1. ...
- Android学习笔记之在图片特效
1.涂鸦(能清屏) HandWritingActivity.java [java] view plaincopy package xiaosi.handWriting; import android. ...
最新文章
- python列表按照指定顺序排序-Python常见排序操作示例【字典、列表、指定元素等】...
- 夏日炎炎,请照顾好你的电脑
- ubuntu16.04 安装jdk
- php根据手机号码获取省份
- golang 1.9 sp MySQL_Golang-使用mysql
- Gym102832K. Ragdoll(CCPC长春)
- 设计模式C++实现(6)——适配器模式
- C++学习_第1章_从C到C++
- 哈啰出行完成新一轮2.8亿美元融资 阿里首次入股
- .Net IOC框架入门之二 CastleWindsor
- F7-Nginx虚拟主机Server
- 图文展示目标检测的现代发展历史
- C语言实现 Base64 和 Base32 编解码
- openwrt nas_【群晖】用群晖虚拟机安装New Pi(OpenWRT)软路由系统
- pycharm如何打开历史_如何在pycharm中反转控制台历史顺序以进行复制粘贴?
- ArcGIS 缓冲区与叠加分析
- lsm mysql_一文了解数据库索引:哈希、B-Tree 与 LSM
- 翁帆给杨振宁的情书(中英文对照)
- 测试开发进阶——常用中间件概念——JDBC——连接数据库理解
- 搭建阿里云专有网络VPC
热门文章
- ubuntu上matlab2014a修改成windows方式快捷键
- Keras中的时间分布层TimeDistributed Layer使用教程
- 零基础学启发式算法(6)-蚁群算法 (Ant Colony Optimization, ACO)
- C++ tbb::atomic<bool> 声明、读取load、重新赋值store
- C++ const,static,inline
- kubernetes视频教程笔记 (3)-Pod及其网络通讯方式
- Kubernetes 小白学习笔记(10)--搭建一个kubernetes集群-组建节点网络
- thinkphp count distinct
- Unity3D(一) 操作界面及游戏常识
- 正则表达式在java中的用法