如何从包裹中读取

时间:2015-09-28 22:02:11

标签: java android parcelable

我以为我理解如何从包裹读取/写入,但现在我卡住了。在我的一个可分配的对象中,我有这个功能

@Override
public void writeToParcel(Parcel dest, int flags) {
    dest.writeInt(7);
    int testInt = dest.readInt();
    Log.d("test","INT = " + testInt);
}

在保存活动状态时正确运行。这输出

INT = 0

我认为是因为我没有正确地写/读包裹。或者也许你不能立即写作和阅读。我做错了什么?

1 个答案:

答案 0 :(得分:0)

您应该使用Parcel方法写入writeToParcel,并阅读Parcel {Creator createFromParcel 1}}方法。

我不确定您为什么要在Parcel方法中读取writeToParcel,但如果您这样做,则不应该期望最近写的{{1}首先阅读;数据按照写入的顺序读取。