将`TransformingRandomAccessList <t>`转换为`List <t>`

时间:2016-11-15 21:40:05

标签: java android

致电Lists.transform后,我们获得TransformingRandomAccessList。这很棒,除非尝试包裹它时,我们会遇到异常崩溃:

  

引起:org.parceler.ParcelerRuntimeException:无法为com.google.common.collect.Lists $ TransformingRandomAccessList找到生成的Parcelable类,请验证您的类是否已正确配置以及Parcelable类com.google.common.collect .Lists $ TransformingRandomAccessList $$ Parcelable由Parceler生成。

List<Foo> items = List.transform(...);

Bundle bundle = new Bundle();
bundle.putParcelable("MyItemsKey", Parcels.wrap(items));

快速轻松地将items转换为普通列表。或者有更好的方法将其放入Bundle

1 个答案:

答案 0 :(得分:1)

我用这个:

ImmutableList.copyOf(items);

另一种方法是使用java libs中的那个

new ArrayList<Foo>(items);