Android高手进阶教程(十七)之---Android中Intent传递对象的两种方法(Serializable,Parcelable)!

原创 2010年07月16日 22:13:00

大家好,好久不见,今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key, Object);当然这些Object是有一定的条件的,前者是实现了Serializable接口,而后者是实现了Parcelable接口,为了让大家更容易理解我还是照常写了一个简单的Demo,大家就一步一步跟我来吧!

第一步:新建一个Android工程命名为ObjectTranDemo(类比较多哦!)目录结构如下图:

 

第二步:修改main.xml布局文件(这里我增加了两个按钮)代码如下

第三步:新建两个类一个是Person.java实现Serializable接口,另一个Book.java实现Parcelable接口,代码分别如下:

Person.java:

Book.java:

第四步:修改ObjectTranDemo.java,并且新建两个Activity,一个是ObjectTranDemo1.java,别一个是ObjectTranDemo2.java.分别用来显示Person对像数据,和Book对象数据:,代码分别如下:

ObjectTranDemo.java:

ObjectTranDemo1.java:

ObjectTranDemo2.java:

第五步:比较重要的一步啦,修改AndroidManifest.xml文件(将两个新增的Activity,ObjectTranDemo1,ObjectTranDemo2)申明一下代码如下(第14,15行):

第六步:运行上述工程查看效果图啦:

效果1:首界面:

效果2:点击Serializable按钮

效果3:点击Parcelable按钮:

OK~今天就先到这里了,大家如果要嫌代码过长,不想敲的话,可以留下Email.俺给你邮过去,呵呵~希望对大家 有点小帮助 ,bye~

Android中Intent传递对象的两种方法(Bundle.putParcelable/putSerializable)!

Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(K...
  • dabian1987
  • dabian1987
  • 2012年03月30日 10:47
  • 14946

activity 之间通过intent传递TreeMap时出现java.lang.ClassCastException: java.util.HashMap cannot be cast to jav

http://stackoverflow.com/questions/22867427/java-lang-classcastexception-java-util-hashmap-cannot-be...
  • wenyiqingnianiii
  • wenyiqingnianiii
  • 2014年07月10日 14:22
  • 3423

Retrofit 泛型解析遇到com.google.gson.internal.LinkedTreeMap cannot be cast to object

在Retrofit网络请求数据,使用泛型解析json时,出现了com.google.gson.internal.LinkedTreeMap cannot be cast to com.xylife.c...
  • jdsjlzx
  • jdsjlzx
  • 2016年06月05日 23:55
  • 17966

Intent隐式跳转及参数传递

简单来说intent隐式跳转就是用action打开activity,server,broadcast。intent传递参数的方式有两种,一种是大家熟悉的extra,键值对的形式,直接传递参数;另一种就...
  • zy4569575
  • zy4569575
  • 2017年03月23日 10:35
  • 408

Android中Intent传递对象的两种方法(Serializable,Parcelable)

今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putPar...
  • xyz_lmn
  • xyz_lmn
  • 2010年09月26日 22:03
  • 111083

Android Intent传递Parcelable和Serializable对象原理分析

Android Intent传递Parcelable和Serializable对象原理分析  当我们需要打开一个Activity的时候,经常使用Intent去传递一些数据给将要打开的Activity。...
  • u012341052
  • u012341052
  • 2017年03月30日 11:40
  • 699

Android高手进阶教程(十七)之---Android中Intent传递对象的两种方法(Serializable,Parcelable)!

大家好,好久不见,今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bund...
  • A09211008
  • A09211008
  • 2013年11月14日 11:42
  • 1152

Activity详解 Intent显式跳转和隐式跳转, 及多个Activity之间传值 总结

Activity详解 Intent显式跳转和隐式跳转, 及多个Activity之间传值 总结   Activity 生命周期 显式 Intent 调用 ...
  • a2241076850
  • a2241076850
  • 2017年01月03日 18:20
  • 682

Android开发:显式/隐式Intent意图跳转Activity总结

本文将详细介绍Android开发中如何使用intent跳转,包括使用intent调用系统应用
  • Xiong_IT
  • Xiong_IT
  • 2015年04月16日 10:37
  • 9963

Intent之对象传递(Parcelable传递对象和对象集合)

接着上一篇文章,下面我们讨论一下如何利用Parcelable实现Intent之间对象的传递 一、实现对象传递 首先创建User.java实现Parcelable接口: package org.y...
  • yayun0516
  • yayun0516
  • 2015年06月07日 09:40
  • 3610
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android高手进阶教程(十七)之---Android中Intent传递对象的两种方法(Serializable,Parcelable)!
举报原因:
原因补充:

(最多只允许输入30个字)