什么是Android中的Parcelable
public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { public MyParcelable createFromParcel(Parcel in) { return new MyParcelable(in); } public MyParcelable[] newArray(int size) { return new MyParcelable[size]; } }; private MyParcelable(Parcel in) { mData = in.readInt(); } }
在我的Android课程中,教师使用了这段代码,但他们并未对此进行详细解释。 我该如何解释这段代码? 我试过阅读文档,但我没有解释。
这个概念叫做Parcelable
Parcelable是Java Serializable的Android实现。 它假设某种结构和处理方式。 这样,与标准Java序列化相比,可以相对快速地处理Parcelable。
要允许将自定义对象解析为另一个组件,需要实现android.os.Parcelable接口。 它还必须提供一个名为CREATOR的静态final方法,该方法必须实现Parcelable.Creator接口。
您编写的代码将是您的模型类。
您可以在Activity中使用Parcelable,例如:
intent.putExtra("student", new Student("1")); //size which you are storing
并获得此对象:
Bundle data = getIntent().getExtras(); Student student = (Student) data.getParcelable("student");
这里Student是一个模型类名。 用你的替换。
简单来说,Parcelable用于将模型类的整个对象发送到另一个页面。
在您的代码中,这是在模型中,它将int值大小存储到Parcelable对象以在其他活动中发送和检索。
参考:
教程1
教程2
教程3