【发布时间】:2017-01-31 10:14:20
【问题描述】:
我在服务器中有超过 1000 万条记录,我想将这些数据提取到我的 android 设备。
我在列表视图中实现了分页,页面加载后,我将新加载的页面添加到我的数组中。
我的问题是如果我加载所有这些页面,我会出现内存不足异常吗?
如果是,那么是否有任何有效的方法来加载数百万数据?
【问题讨论】:
我在服务器中有超过 1000 万条记录,我想将这些数据提取到我的 android 设备。
我在列表视图中实现了分页,页面加载后,我将新加载的页面添加到我的数组中。
我的问题是如果我加载所有这些页面,我会出现内存不足异常吗?
如果是,那么是否有任何有效的方法来加载数百万数据?
【问题讨论】:
是的,看起来这就像一个太大的数据结构。可能会出现内存异常,但不能保证,这取决于内存压力。
管理此问题的方法是在给定时间仅保留一部分数据:数据显示在屏幕上,还有一些数据让用户向上或向下滚动。滚动时,应用程序然后从服务器获取新数据并从内存中刷新一些旧数据以控制空间大小。
【讨论】:
不要使用 ListView,而是使用 RecycleView,它总是会被回收,您将永远不会遇到与内存相关的问题。
【讨论】: