在flatList中加载大量图像会损害性能以及如何避免它

时间:2018-02-27 18:06:57

标签: react-native react-native-android react-native-ios react-native-flatlist

注意我不想使用分页我想加载非常大的列表

我使用flatlist来渲染大约5000个项目 每个项目参考照片都是这样的(不是同一张照片只是示例):

256 × 256 PNG 
30,759 bytes (30 kilobytes)

或更大。
当我超过1000件物品时,我开始遇到性能问题。

首先是这个现实问题是从网址引用的图像进入手机记忆吗? 加载这么多图像时是否有更好的方法来降低内存压力?

在android上我在ios设备上遇到的性能问题较少。

1 个答案:

答案 0 :(得分:0)

  

首先,这是一个现实的问题,从网址引用的图像是否进入手机内存?   加载这么多图像时是否有更好的方法来降低内存压力?

是的,您的图像绝对会进入手机记忆库,更具体地说是手机的内存。您已经提到过您不想使用分页,但在这种情况下,这确实是处理分页的最佳方法。

要考虑的另一件事是在滚动浏览不再需要的图像时清除图像缓存。但是,React Native不提供开箱即用的任何此类功能。您必须查看第三方缓存解决方案,例如 https://github.com/billmalarky/react-native-image-cache-hoc