gpt4 book ai didi

iPhone:快速读取大量图像

转载 作者:行者123 更新时间:2023-12-03 21:10:36 25 4
gpt4 key购买 nike

我正在开发一个应用程序,我们可以在 ScrollView 中同时处理大量图像。 (它看起来是这样的,每个蓝色 block 都在向右扩展的 ScrollView 上的图像中: /image/o7lFx.png )因此,能够处理这样做会增加内存的巨大压力。因此,我实现了一系列技术,例如重用 ImageView 等,这些技术都非常成功地降低了我的内存使用量。我做的另一件事是不将实际图像保留在内存中(我当然不能对所有图像都这样做,因为这会很快耗尽内存),我只将图像的文件路径保留在内存中,然后在用户滚动到该图像附近的 ScrollView 区域。然而,尽管这节省了内存,但它会导致 ScrollView 出现大量滞后,因为它必须不断从磁盘读取图像。我想不出一个好的解决方案来解决这个问题。基本上现在,应用程序仅将可见的 uiimageviews 绘制到屏幕上,当用户滚动时,应用程序将查看是否可以将另一个 ImageView 出队,这样它就不必分配另一个 ImageView ,此时它将图像读入内存,但正如我所说,它导致滚动 Action 非常慢。关于解决这个问题的策略有什么想法吗?有谁知道原生照片应用程序如何处理这种事情?非常感谢!

最佳答案

我可以建议您一个简单的解决方案来平衡内存和计算机处理。您只在内存中保留缩略图等小图像,并且只保留大约 20 个。我正在做的一个项目中,我保留了最近访问过的 20 个缩略图 (100 x 100),这不会消耗大量内存。我相信它始终花费大约 200 kb,但与一般可用内存相比。我认为这已经足够好了。

这还取决于您的用例:如果用户滚动得非常快并且您不知道他们什么时候会走。您可以拥有比缩略图更小的图像,当您在 UIImageView 上显示它时,您可以调整它的大小以适应。当用户停止滚动一段时间时。您可以开始加载更大的图像,然后您将获得更好的图像。用户甚至可能没有注意到该过程

我认为没有一种解决方案可以快速且使用尽可能少的内存。因为我们有内存,也许不大,但只要我们巧妙地使用它,就足够了。

关于iPhone:快速读取大量图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3539997/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com