Java 如何使用自定义对象将自定义模型包裹起来';s构造函数
这是我的类,我正试图将其打包,正如您在代码中看到的,我在代码中的某些地方卡住了:Java 如何使用自定义对象将自定义模型包裹起来';s构造函数,java,android,parcelable,custom-object,Java,Android,Parcelable,Custom Object,这是我的类,我正试图将其打包,正如您在代码中看到的,我在代码中的某些地方卡住了: public class CommentModel implements Parcelable{ String COMMENT_CONTENT; String COMMENT_ID; UserModel COMMENT_ACTOR; public CommentModel(String comment_content, String comment_id,
public class CommentModel implements Parcelable{
String COMMENT_CONTENT;
String COMMENT_ID;
UserModel COMMENT_ACTOR;
public CommentModel(String comment_content, String comment_id, UserModel comment_user){
this.COMMENT_CONTENT = comment_content;
this.COMMENT_ID = comment_id;
this.COMMENT_ACTOR = comment_user;
}
/*== constructor to rebuild object from the Parcel ==*/
public CommentModel(Parcel source) {
this.COMMENT_CONTENT = source.readString();
this.COMMENT_ID = source.readString();
// This is where I'm stuck!
this.COMMENT_ACTOR = source............;
}
public String getContent(){
return this.COMMENT_CONTENT;
}
public void setContent(String content){
this.COMMENT_CONTENT = content;
}
public String getId(){
return this.COMMENT_ID;
}
public void setId(String id){
this.COMMENT_ID = id;
}
public UserModel getActor(){
return this.COMMENT_ACTOR;
}
public void setActor(UserModel actor){
this.COMMENT_ACTOR = actor;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(COMMENT_CONTENT);
dest.writeString(COMMENT_ID);
// This is where I'm stuck too! :(
dest.write.....
}
public static final Parcelable.Creator<CommentModel> CREATOR = new Creator<CommentModel>() {
@Override
public CommentModel[] newArray(int size) {
return new CommentModel[size];
}
@Override
public CommentModel createFromParcel(Parcel source) {
return new CommentModel(source);
}
};
}
public类CommentModel实现可包裹{
字符串注释内容;
字符串注释ID;
用户模型注释参与者;
公共CommentModel(字符串注释内容、字符串注释id、用户模型注释用户){
this.COMMENT\u CONTENT=COMMENT\u CONTENT;
this.COMMENT\u ID=COMMENT\u ID;
this.COMMENT\u ACTOR=COMMENT\u user;
}
/*==从地块重建对象的构造函数==*/
公共模型(地块源){
this.COMMENT_CONTENT=source.readString();
this.COMMENT_ID=source.readString();
//这就是我被困的地方!
this.COMMENT_ACTOR=来源。。。。。。。。。。。。;
}
公共字符串getContent(){
返回this.COMMENT_内容;
}
公共void setContent(字符串内容){
this.COMMENT_CONTENT=内容;
}
公共字符串getId(){
返回此.COMMENT\u ID;
}
公共无效集合id(字符串id){
this.COMMENT_ID=ID;
}
公共用户模型getActor(){
返回this.COMMENT\u ACTOR;
}
public void setActor(UserModel actor){
this.COMMENT\u ACTOR=ACTOR;
}
@凌驾
公共int描述内容(){
返回0;
}
@凌驾
公共无效写入包裹(包裹目的地,内部标志){
目的书面记录(评论内容);
目的地书面记录(注释ID);
//我也被困在这里了!:(
目的地写。。。。。
}
公共静态最终包裹。创建者=新创建者(){
@凌驾
public CommentModel[]newArray(整数大小){
返回新的模型[大小];
}
@凌驾
公共CommentModel createFromParcel(地块源){
返回新模型(源);
}
};
}
你应该怎么做?
完全可能吗?如果不可能,如何处理这个问题
注:我的UserModel()当然也可以打包。如果
UserModel
是Parcelable
,你可以用它来写对象并读回
dest.writeParcelable(COMMENT_ACTOR, flages);
写作,以及
COMMENT_ACTOR = source.readParcelable(UserModel.class.getClassLoader());
把它读回去