package com.iconasystems.android.models;
import android.os.Parcel;
import android.os.Parcelable;
import com.parse.ParseClassName;
import com.parse.ParseObject;
import java.util.UUID;
/**
* Created by Alex on 2/15/2016.
*/
@ParseClassName("Lock")
public class Lock extends ParseObject implements Parcelable {
private String simNumber;
private User owner;
private String authToken;
private String state;
private String id;
private String doorName;
public Lock() {
}
public Lock(Parcel parcel){
this.doorName = parcel.readString();
this.authToken = parcel.readString();
this.simNumber = parcel.readString();
this.state = parcel.readString();
this.id = parcel.readString();
}
// Some getters and setters
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeString(doorName);
parcel.writeString(authToken);
parcel.writeString(simNumber);
parcel.writeString(state);
parcel.writeString(id);
}
final Creator<Lock> CREATOR = new Creator<Lock>() {
@Override
public Lock createFromParcel(Parcel parcel) {
return new Lock(parcel);
}
@Override
public Lock[] newArray(int i) {
return new Lock[i];
}
};
}
锁由用户拥有(有自己的模型),因此它有类型User的属性所有者。我的主要问题是把用户对象写入包裹中。是否有一种方式将自定义类型写入包裹。
发布于 2016-02-24 14:50:32
是否有一种方式将自定义类型写入包裹。
是。User
类必须实现Parcelable
,然后在writeToParcel
方法中可以使用parcel.writeParcelable(user, i)
Parcel
也可以使用使用parcel.writeSerializable
实现Serializable
的类。这要求您的工作量要小得多,但是由于Serializable
使用反射,因此会带来性能损失。
https://stackoverflow.com/questions/35605309
复制相似问题