我遇到了从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,但没有正面结果。
在这种情况下如何根据数据模型获取数据?
非常感谢!