延迟加载内存和对象

时间:2018-01-06 15:47:20

标签: android lazy-loading

我将从互联网上加载数据,并在带有材料设计的片段中显示自定义列表视图(带导航抽屉),现在我正在搜索延迟加载,然后我看到有关缓存和内部存储中缓存数据的事情所以我很困惑,因为我不知道该怎么做,实际上我很害怕但我有一个想法,因为它关于加载数据而不保存它,我决定问你这个,是否有问题加载数据到Ram(加载到对象而不保存到内部存储)对象。我担心如果用户在一段时间后浏览应用程序,应用程序将崩溃

2 个答案:

答案 0 :(得分:0)

<强> 1 使用RecyclerView,而不是ListView列表

<强> 2 如果数据有图像,则必须使用支持加载图像的库,如Picasso,Glide,...以防止因RAM不足而导致崩溃

第3 您应该添加loadmore函数,例如首先加载30个项目,然后您可以加载更多并更新RecyclerView数据

修改

如果数据很大,您可以使用后台任务全部下载

答案 1 :(得分:0)

完全没问题除非数据非常庞大,否则列表中会有1000个项目。如果您不想拥有脱机支持,则不应将此数据保存在磁盘上。

以上仅适用于文字,如果您的数据中包含图片(假设图片网址),则应将其保留为 {{3 } Glide &amp; Picasso ,他们会照顾内存(RAM)&amp; 磁盘缓存适合您。

预优化在大多数情况下都是过度的,不要太担心你没有的问题。