Intent事务对象通常有两种实现方法:可序列化和可序列化。
另一方面,Serializable :序列化是指将一个对象转换为可保存或可传输的状态。 序列化对象可以在网络上传输,也可以在本地保存。 这里安装了Serializable接口的类可以在Intent上传递
-启动器传递另一方:调用Intent的putExtra ()即可;
人员=新人员(;
Person.setname('Tom );
Person.setage(20;
intent intent=new intent (first activity.this,SecondActivity.class );
intent.putextra('Person_data ',person );
开始活动(intent;
-接收对象:要获取序列化的对象,必须调用Intent的getSerializableExtra )方法。
PersonPerson=(Person ) get intent.getserializableextra (person _ data );
二、Parcelable:Parcelable方式的实现原理是分解完整的对象,分解后的各个部分是Intent支持的数据类型。
-必须传递的对象在实现Parcelable接口后,必须重写以下方法并添加静态变量:
1 ) describeContents (:一般返回0即可;
2 ) writetoParcel(:是parcel的writeXxx ) )方法,必须一次导出一个类中的字段,如writeInt )、writeString )。
3 )实现需要重写(CREATOR ) createFromParcel )和newArray )方法的Parcelable.Creator接口; createFromParcel ()方法必须读取最近写入的字段,并创建和返回相应的对象。 读取方法为readXxx ) ),读取顺序必须与之前导出的顺序完全相同。 newArray ) )方法只需要new返回一个对象数组。
-例如:
publicclasspersonimplementsparcelable {
私有字符串名称;
私有输入;
.
@Override
公共说明内容(
返回0;
}
@Override
publicvoidwritetoparcel (parcel dest,int flags ) )。
dest.writestring(name; 写name
dst.writeint(age ); 写//age
}
publicstaticfinalparcelable.creator creator=newparcelable.creator {
@Override
PublicPersoncreatefromparcel{
人员=新人员(;
person.name=source.readString (; 读取名称
person.age=source.readInt (; 读取//age
返回人员;
}
@Override
公共个人[ ] new array (intsize ) {
return new Person[size];
}
(;
}
- -通过--Intent传递的方法与序列化方法相同;
-接收对象从Intent的getParcelableExtra () )取得
personperson=(person ) getIntent ).getparcelableextra (' person _ data ' );
Android Intent传输对象概述
想看效果:实例的人请看以前的文章Android ViewPager Fragment实现标签的主要代码: publicclassserializeactivityexte .
Android Intent事务对象概述
效果: watermark/2/text/a hr0 CD ovl 2js B2C uy 3n kb i5 uzxqvag 9u z3nozw
5ncGVuZw==/font/5a6L5L2T/fontsize/400/fil ...Android 全局获取 Context 与使用 Intent 传递对象
=====================全局获取 Context======================== Android 开发中很多地方需要用到 Context,比如弹出 Toast.启动活 ...
Android开发——使用intent传递对象
intent传递对象有两种方法: 方式一:Serializable 方式 方式二:Parcelable方式 在这里不多介绍了,这一篇就是快速上手使用教程,至于详细原理介绍的,请看这一篇http://w ...
android#使用Intent传递对象
参考自——郭霖 Intent的用法相信你已经比较熟悉了,我们可以借助它来启动活动.发送广播.启动服务等.在进行上述操作的时候,我们还可以在Intent中添加一些附加数据,以达 ...
Intent传递对象——Serializable和Parcelable差别
前两篇文章讨论了Serializable和Parcelable实现Intent之间传递对象和对象数组的方式.两种方法实现上相似,效果一致,怎么选择用哪种方法实现呢? Intent在不同的组件中传递对象 ...
Intent传递对象的几种方式
原创文章.转载请注明 http://blog.csdn.net/leejizhou/article/details/51105060 健壮的花卷的博客 Intent的使用方法相信你已经比較熟悉了,Inte ...
怎样使用Intent传递对象
怎样使用Intent传递对象 我们能够使用Intent来启动Activity.开启服务Service,发送广播Broadcast,然后使用Intent传递主要的数据类型,如:布尔值,整型,字符串等 I ...
关于intent传递对象后是传递的对象的地址还是对象的拷贝?
var intent = Intent(activity,SingleColorControlActivity::class.java); var bundle = Bundle()// bundle ...
Android中Intent传递对象的两种方法(Serializable,Parcelable)
今天要给大家讲一下Android中 Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是 Bundle.putP ...
随机推荐
使用Intellij idea开发
使用IntelliJ IDEA开发SpringMVC网站(一)开发环境 使用IntelliJ IDEA开发SpringMVC网站(二)框架配置 使用IntelliJ IDEA开发SpringMVC网站 ...
json的序列化和反序列化支持时间格式转换
.NET自带的json序列有时间格式问题,为了解决自己写了个json格式的序列化和反序列化 1.引入的命名空间 using System; using System.Collections.Gener ...
利用查询提示优化SQL
数据库环境:SQL SERVER 2005 我们来看一下SQL语句及对应的数据量 SELECT COUNT(*) FROM cinvout_02 a WHERE ( a.dept_id IN ( SE ...
Solidity by Example详解 - Voting
Example地址:https://solidity.readthedocs.io/en/develop/solidity-by-example.html#voting Voting程序的功能: 这个 ...
laravel之路由和控制器与视图
路由和控制器: : 路由与视图: 访问:
(转)浅谈Hybrid技术的设计与实现
转载地址:https://www.cnblogs.com/yexiaochai/p/4921635.html 前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hyb ...
java 线程 (三)线程并发的安全性 同步代码块
package cn.sasa.demo1; import java.util.concurrent.ExecutionException; public class ThreadDemo { pub ...
php将多个值的数组去除重复元素
array_unique(array) 只能处理value只有单个的数组. 去除有多个value数组,可以使用如下函数实现: function more_array_unique($arr=array ...
《将博客搬至51CTO》
想把你的博客搬家到51CTO吗?想拥有一键式搬家的体验吗? 就算家大业大不好搬也没关系,我们帮你! 51CTO推出专业的搬家工具,用最短的时间.最快的速度,为你在这儿搭建一个温馨的家. 在这儿,你可以 ...
单片机C程序优化
单片机C程序优化 对程序进行优化,通常是指优化程序代码或程序执行速度.优化代码和优化速度实际上是一个予盾的统一.一般是优化了代码的尺寸,就会带来执行时间的增加:如果优化了程序的执行速度,通常会带来代码 ...