从parcelable数组列表中获取项目

时间:2016-01-29 15:36:17

标签: java android ormlite parcelable parcel

我遇到了从getParcelableArrayList获取内容的麻烦。

我有扩展parcelable

的数据模型类
@DatabaseTable(tableName = "note")
public class Log implements Parcelable {

@DatabaseField(id = true, index = true)
UUID id;

@DatabaseField
String title;

@DatabaseField
String description;

public Log() {
}

@Override
public int describeContents() {
    return 0;
}

public Log(Parcel in) {
    this.title = in.readString();
    this.description = in.readString();
}

@Override
public void writeToParcel(Parcel out, int flags) {
    out.writeString(title);
    out.writeString(description);
}

public void readFromParcel(Parcel in){
    title = in.readString();
    description = in.readString();
}

public static final Parcelable.Creator<Log> CREATOR = new Parcelable.Creator<Log>(){
    public Log createFromParcel(Parcel in){
        return new FoodLog(in);
    }
    public Log[] newArray(int size){
        return new FoodLog[size];
    }
};

我想在数据库中编辑条目的make功能。 我正在通过捆绑包将活动一中的数据发送到活动二

活动一:

Intent intent = new Intent(LogList.this, AddLogActivity.class);
Bundle bundle = new Bundle();
bundle.putParcelableArrayList("list", new ArrayList<>(mLog));
intent.putExtras(bundle);
startActivity(intent);

在活动二中通过意图接收捆绑包:

Intent mIntent = getIntent();
if (mIntent != null) {
    Bundle bundle = mIntent.getExtras();
    if (bundle != null) {
        mLogParcel = bundle.getParcelableArrayList("list");
    }
}

所以,我的问题是如何从Activity 2中传递的arraylist中获取数据?

我已将数据保存在ArrayList<Log> mLogParcel;中,我尝试在mLogParcel上使用readFromParcel,但没有正面结果。 在这种情况下如何根据数据模型获取数据?

非常感谢!

0 个答案:

没有答案