【问题标题】:Convert a `TransformingRandomAccessList<T>` to just `List<T>`将 `TransformingRandomAccessList<T>` 转换为 `List<T>`
【发布时间】:2016-11-16 05:41:28
【问题描述】:

调用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

【问题讨论】:

    标签: java android


    【解决方案1】:

    我会用这个:

    ImmutableList.copyOf(items);
    

    另一种选择是使用 java 库中的那个

    new ArrayList<Foo>(items);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-26
      • 2021-12-02
      • 2014-10-04
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      相关资源
      最近更新 更多