我正在自定义类似于iOS中的照片应用的图库。我希望能够在自定义图库中的各张照片之间滚动。我也在预加载很快就会显示的图像(如果我向右滚动,我预加载,即右边的2个下一个图像)
然而,图像加载似乎是CPU消耗的,它干扰滚动。使滚动挂起一秒钟。
有没有更好的方法呢? (我考虑过保留与屏幕分辨率相匹配的每个图像的较小版本)
基本上我在后台线程中调用它:
UIImage *img = [UIImage imageWithContentsOfFile:path];
然后我在主线程上执行一个选择器,它只是用加载的图像初始化现有的ImageView。
答案 0 :(得分:1)
我在某种程度上弄明白了。
我需要在后台线程的屏幕外渲染图像,以确保它已加载。否则在我决定在主线程中呈现它之前它实际上不会加载。这导致主线程在加载时被阻塞。