0

当我将意图之间的数组作为结果传递给 startActivityForResult 时,我得到了一个部分数组

ArrayList<User> currentUsers = ...

Intent resultIntent = new Intent();
resultIntent.putParcelableArrayListExtra(USER_ARR, currentUsers);
setResult(Activity.RESULT_OK, resultIntent);

ArrayList<User> users = data.getParcelableArrayListExtra(USER_ARR);

用户实现了 Parcelable,它的构建肯定是正确的,

我在传递数组时改变了一些东西,现在当它发送数组时

它在另一侧收到,许多用户为空,或除一个用户外的所有用户都为空

我也尝试只发送一个 Parcelable[],并且做了同样的事情

请帮忙

4

1 回答 1

0

找到了答案 :) 在解决这个问题之前我不知道它是如何工作的

只有当字节数组的大小大于零时,我才在我的 parcelable 中读取字节数组,但不读取它并没有推进 dataPosition()

感谢这个问题Make custom Parcelable contains byte array我找到了答案

祝大家有美好的一天

于 2013-08-29T08:17:04.663 回答