2010-07-11 70 views
5

我有一個自定義ListView,它使用自定義ArrayAdapter(基本上只是覆蓋getView())。該自定義適配器使用後端List<CustomObject>List中的元素從網絡中檢索,因此我想將它保存在onSaveInstanceState()中。但是,我無法找到將List<E>放入Bundle的方法。我認爲這是一個常見任務,在實例狀態中保存自定義數組。其他人如何做到這一點?保存自定義ListView的實例狀態?

回答

1

無法序列化List<E>,您需要轉換爲Array,並在傳遞序列化對象時使用它。然後讀出數組並轉換成列表。看到這個問題,關於sortedset serializationE也必須是可序列化的。

查找到.toArrayputStringArray要麼putStringArrayList

+0

謝謝您的回答,它指引我正確的方向。我最終將我的列表投射到一個ArrayList,它是可序列化的並且完美地工作。如果我提到我的'List '實際上是作爲'ArrayList '實例化的,你可能會建議同樣的事情,但不幸的是我沒有。 – Felix 2010-07-11 11:08:28