12_项目中关于android中Parcelable的使用
2014-06-19 20:06
204 查看
1.创建一个类实现Parcelable 接口,重写接口中的方法(并且要求为这个类写一个CREATOR的字段来完成Category的还原)
package com.example.jd.domain; import android.os.Parcel; import android.os.Parcelable; public class Category implements Parcelable { private Integer id; private String name; private String image; public Category() { super(); // TODO Auto-generated constructor stub } public Category(Integer id, String name, String image) { super(); this.id = id; this.name = name; this.image = image; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getImage() { return image; } public void setImage(String image) { this.image = image; } @Override public String toString() { return "Category [id=" + id + ", name=" + name + ", image=" + image + "]"; } @Override public int describeContents() { return 0; } /** * 写入 */ @Override public void writeToParcel(Parcel dest, int flags) { dest.writeInt(id); dest.writeString(name); dest.writeString(image); } //CREATOR是要求写的Parcelable.Creator<Category>的创造者对象 public static final Parcelable.Creator<Category> CREATOR = new Parcelable.Creator<Category>() { @Override public Category createFromParcel(Parcel source) { // TODO Auto-generated method stub return new Category(source); } @Override public Category[] newArray(int size) { // TODO Auto-generated method stub return new Category[size]; } }; // 从Parcel中读取数据 private Category(Parcel source) { id = source.readInt(); name = source.readString(); image = source.readString(); } }
2.传递值和获取值得方法
2.1存入值
Bundle data = new Bundle(); data.putParcelableArrayList("entities", entities);2.2获取值
//获取entities对象 ArrayList<Category> entities = bundle.getParcelableArrayList("entities");
相关文章推荐
- 关于向Android项目中的drawable下添加图片却无法使用的问题
- Android拓展系列(12)--使用Gradle发布aar项目到JCenter仓库
- 关于Android架构组件,Android Architecture Components,使用AAC构建项目
- 关于android-swipelistview的开源项目的使用
- 关于在android项目中使用fragment的个人经验
- Android 关于WebView全方面的使用(项目应用篇)
- Android拓展系列(12)--使用Gradle发布aar项目到JCenter仓库
- Android拓展系列(12)--使用Gradle发布aar项目到JCenter仓库
- 关于Android项目使用注解开发框架在eclipse环境下的配置
- 关于使用eclipse开发android应用,更换jdk1.8之后遇到的eclipse闪退以及更换jdk1.7之后运行项目报错:Unsupported major.minor version 52.0
- Android 关于WebView全方面的使用(项目应用篇)
- Android拓展系列(12)--使用Gradle发布aar项目到JCenter仓库
- Android中关于传递对象的俩种用法,也就是Serializable和Parcelable的使用
- 关于Jenkins使用Gradle对android项目打包遇到的问题总结
- 关于在android项目中使用fragment的个人经验
- 关于github开源项目Side-Menu.Android的使用详解
- 关于Android的轻量级数据库SQLlite的使用实践小项目 (生管理系统(附源码))
- 关于android 消息提醒,在网上找到这个项目在eslipse中使用ValueAnimator报错
- 使用Tortoise SVN版本控制Eclipse工作区的Android项目时,bin编译错误
- android新建项目报关于progurad.xml不存在错误