Ios 在scrollView中添加大量图像需要花费大量的时间来处理卡住的UI

Ios 在scrollView中添加大量图像需要花费大量的时间来处理卡住的UI,ios,objective-c,cocoa-touch,Ios,Objective C,Cocoa Touch,嗨,我正在制作iOS应用程序,我想在scrollview中显示1000 UImageview。我已经在Hirrichy项目中放置了所有有名字的图像 1_image.png 2_image.png 3_image.png . . . 1000_image.png 现在,我在viewController的ViewWillDisplay中所做的是,我在一个循环中加载UIImageView中的所有图像,并在设置其帧后将其作为子视图添加到ScrollView中 它工作得很好,但问题是,当我试图展示这个V

嗨,我正在制作iOS应用程序,我想在scrollview中显示1000 UImageview。我已经在Hirrichy项目中放置了所有有名字的图像

1_image.png
2_image.png
3_image.png
.
.
.
1000_image.png
现在,我在viewController的ViewWillDisplay中所做的是,我在一个循环中加载UIImageView中的所有图像,并在设置其帧后将其作为子视图添加到ScrollView中

它工作得很好,但问题是,当我试图展示这个VC时,由于它正在加载1000个图像,它需要花很多时间处理卡住的UI

我把所有的东西都放在一个文件夹里,这是snippest

-(void)addImages
{
  for(i=0 to i<1000 i++)
  {
    get image
    set in imageVIew
    setframe of imageView
    add to scrollview as subview
  }
}
-(无效)添加图像
{

对于(i=0到i可能需要或

为什么不使用
UITableView
?它管理性能本身。实际上,我有非常复杂的视图层次结构,需要在网格视图中添加到滚动视图中。使用自定义表单元格处理这将是一个很大的混乱。您可以使用UITableView的单元格重用概念…我的意思是只加载很少的图像到scrollView,然后当用户将滚动scrollView时,继续添加更多图像并从scrollView中删除旧图像…即使您必须使用UIScrollView,您也必须在其中分页图像。如果您不能依赖表或集合视图,则必须自己分页。您是否查看了应用程序的内存占用情况?它可能会占用大量内存。如果您只在模拟器或iPhone5上进行过测试,它甚至可能会在像iPhone 3GS这样只有256 MB内存的设备上崩溃。我建议您观看WWDC有关滚动视图的视频。他们每年都会进行此课程,而且总是非常有帮助。看看这个。这是一个关于滚动视图的教程crollviews。关于分页的部分很好。它只加载您将要显示的图像。我在有许多图像要显示时使用过它,并且我没有注意到UI中的任何延迟。