【发布时间】:2015-02-23 02:33:09
【问题描述】:
我有一个ListView,其中每个项目由多个TextViews 和Bitmaps 组成。该列表非常大,启动应用程序时加载大约需要 5-6 秒。所以,我正在尝试将ListView 数据缓存到我的 SD 卡中,以便只创建一次列表,之后,应用程序将从缓存中读取列表,而不是重新创建列表(我m 使用AsyncTask)。
所以,我尝试使用FileOutPutStream 和ObjectOutputStream 将ListView 数据缓存为简单的Serializable 对象。这适用于简单列表,但在我的情况下,我无法从缓存中读取数据。堆栈跟踪显示无法读取该对象,因为它不是Serializable。如何存储如此复杂的ListView 数据?到目前为止,我已经尝试过this。
【问题讨论】:
-
使用 UIL(通用图像加载器)并在磁盘上启用缓存保存,易于使用和非常强大的库
-
如果您发布了适配器代码,我们将更容易确定如何提高您的性能,以及如何加载当前数据。
标签: android caching android-listview fileoutputstream objectoutputstream