Android_Intent_note
Activity间传递参数的方法
方法1. 通过putExtra()传递基本数据类型
方法2. 通过putExtras()传递Bundle数据类型
方法3. 通过Application读写全局变量
方法4. 把基本的数据类型封装到一个对象中,然后通过intent传递该对象
需要考虑对Person对象进行序列化
Java中的序列化使用Serializable
Android中的序列化使用Parcelable
用法如下:
1. 需要对可序列化的类,实现Parcelable接口
2. 实现Parcelable接口中的抽象方法
2.1 describeContents() 该方法直接返回0
2.2 writeToParcel(Parcel out, int flags) 把需要序列化的参数写入out中 比如:
out.writeString(name);
out.writeInt(age);
out.writeDouble(weight);
3. 定义一个静态的属性CREATOR 是Parcelable.Creator的对象
在该匿名内部类中,实现Parcelable.Creator中的两个方法(泛型参数为类名)
方法1.
createFromParcel(Parcel in) 对in进行反序列化(需要通过Person的构造器实现)
方法2.
newArray(Parcel in) 反序列化多个元素时使用
4. 定义私有的构造器 从in中反序列对应的参数(反序列化参数的顺序必须与序列化参数的顺序保持一致)
当SecondActivity需要回传参数时:
1. MainActivity启动SecondActivity时需要调用startActivityForResult()
并定义请求码
2. SecondActivity在合适的使用调用setResult()设置返回码和返回的参数
然后调用finish()结束当前Activity
3. MainActivity需要重写onActivityResult()捕获SecondActivity返回的结果
常用的返回码为:
RESULT_OK 成功
RESULT_CANCEL 失败
RESULT_FIRST_USER 用户自定义的返回码
RESULT_FIRST_USER + 1
RESULT_FIRST_USER + 2
……
Android_Intent_note的更多相关文章
随机推荐
- 使用java远程调试技术监控代码运行
JAPA介绍 JPDA(Java Platform Debugger Architecture)是 Java 平台调试体系结构的缩写,通过 JPDA 提供的 API,开发人员可以方便灵活的搭建 Jav ...
- [HDU 1203] I NEED A OFFER!
I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
- apache开源项目--kylin
Kylin 是一个开源的分布式的 OLAP 分析引擎,来自 eBay 公司开发,基于 Hadoop 提供 SQL 接口和 OLAP 接口,支持 TB 到 PB 级别的数据量. Kylin 是: 超级快 ...
- 【转】win7与VMware ubuntu虚拟机实现文件共享(最后一定要装open-vm-dkms插件)
原文网址:http://blog.sina.com.cn/s/blog_453b9efb01019hpl.html 一般来说,由于一些特殊的需要,会在Win7系统中利用虚拟机(VMware)安装ubu ...
- dtree的使用
第一步:到官网下载下载dtree的相关包. 第二步:导入相关包 <link rel="StyleSheet" href="${ctx}/dtree/dtree. ...
- 如何使一个网络下的2台路由器都可以dhcp上网
设备:2台路由器,网线若干 首先,设置好一个路由器,让它可以拨号上网.网关设置为192.168.1.1,子网掩码为255.255.255.0,dns为61.177.7.1 然后,设置第二台路由器.设置 ...
- FZU 2092 收集水晶 dp+bfs
定义dp[t][x1][y1][x2][y2]为在t时刻,人走到x1,y1,影子走到x2,y2所获得最大价值 最终就是所有的dp[max][..][..][..][..]的最大值 然后递推也很自然,枚 ...
- North North West
North North West Time Limit: 10000ms, Special Time Limit:25000ms, Memory Limit:65536KB Total submit ...
- 使--no-ri --no-rdoc成为gem安装的默认选项
在使用gem install命令的时候,希望加上--no-ri --no-rdoc选项,但是不希望每一次都手动加上这个选项. 其实可以通过编辑配置文件,改变gem install的默认选项. 在win ...
- 察看so文件的依赖关系
使用arm-linux-androideabi-readelf 察看依赖动态库 /android-ndk-r8d/toolchains/arm-linux-androideabi-4.7/prebui ...