将 List 放入 Bundle 对象

Put List into Bundle object

我想将 List<CustomObject> 添加到 Bundle 对象中。 这个 CustomObject 实现了 Parcelable 接口。我注意到 Bundle 对象有一个隐藏的 class,它允许我传递 List 个对象。

/** {@hide} */
    @UnsupportedAppUsage
    public void putParcelableList(String key, List<? extends Parcelable> value) {
        unparcel();
        mMap.put(key, value);
        mFlags &= ~FLAG_HAS_FDS_KNOWN;
    }

然而正如我们所见,它是隐藏的。如何传递 ListCustomObject ?或者如何使用 Kotlin 将列表转换为 ArrayList

how can I transform a list into an ArrayList using Kotlin?

只需投射为ArrayList

val bundle = Bundle()
val list : List<CustomObject > = ArrayList<CustomObject>()
bundle.putParcelableArrayList("list", list as ArrayList<CustomObject>)

您可以使用此代码将列表转换为数组

val arrayList = ArrayList(list)