缓存复杂的ListView数据

时间:2014-12-25 09:31:04

标签: android caching android-listview fileoutputstream objectoutputstream

我有ListView,其中每个项目由多个TextViewsBitmaps组成。该列表非常大,启动应用程序时加载大约需要5-6秒。所以,我正在尝试将ListView数据缓存到我的SD卡中,以便列表只创建一次,之后,应用程序将从缓存中读取列表,而不是重新创建列表(我正在使用AsyncTask)。

因此,我尝试使用ListViewSerializableFileOutPutStream数据缓存为简单的ObjectOutputStream对象。这适用于简单列表,但在我的情况下,我无法从缓存中读取数据。堆栈跟踪表示无法读取对象,因为它不是Serializable。如何存储此类复杂的ListView数据?到目前为止,我已尝试this

1 个答案:

答案 0 :(得分:0)

您可能已经这样做了,但由于我无法看到您的代码,因此不清楚:您必须在自定义Serializable中延伸ListView,而您&# 39; ll可能需要设置和明确serialVersionUID(至少我做过):

public class ListView implements Serializable {


    /**
     * 
     */
    private static final long serialVersionUID = 21;