Iphone 如何在uiscrollview中添加100多个UIImageView

Iphone 如何在uiscrollview中添加100多个UIImageView,iphone,uiscrollview,uiimageview,Iphone,Uiscrollview,Uiimageview,我有一个uiscrollview,我一个接一个地添加UIImageView,但是当我添加超过40个对象时,我想我的内存有问题,应用程序崩溃了……我该怎么办?我正在尝试从苹果制作一款类似照片查看器的应用程序!救命啊 我不想要拇指,我只想在用户从一个图像切换到另一个图像时显示下一个图像,但我必须卸载上一个图像并显示下一个图像 我像这样删除前一个 UIImageView l; l=[[scroll subviews] objectAtIndex:0]; [l removeFromSuperview]

我有一个uiscrollview,我一个接一个地添加UIImageView,但是当我添加超过40个对象时,我想我的内存有问题,应用程序崩溃了……我该怎么办?我正在尝试从苹果制作一款类似照片查看器的应用程序!救命啊


我不想要拇指,我只想在用户从一个图像切换到另一个图像时显示下一个图像,但我必须卸载上一个图像并显示下一个图像

我像这样删除前一个

UIImageView l;

l=[[scroll subviews] objectAtIndex:0];
[l removeFromSuperview];
l=nil;
然后我加上下一个像这样的

[scroll insertSubview:imageView atIndex:counter];
但我看到的是黑色背景,没有图像

请帮忙

问问你自己,你真的需要把100张图片全部载入内存吗?为什么不根据用户滚动到的图像,一次在后台加载几个图像呢?

问问自己,你真的需要将所有100个图像加载到内存中吗?为什么不根据用户滚动到的图像,一次在后台加载几个图像呢?

不要这样做

如果要显示100个小缩略图,请首先使用核心图形调整它们的大小。然后,当您一次显示100个图像时,它们占用的内存要少得多

如果要显示100个大图像,但一次只能看到一个,请使用1或2个图像视图加载当前和下一个图像,并以巧妙的方式设置它们的动画,使其看起来是源源不断的。您仍然可以使用scrollView,只需监视它的位置并适当地定位图像视图。

不要这样做

如果要显示100个小缩略图,请首先使用核心图形调整它们的大小。然后,当您一次显示100个图像时,它们占用的内存要少得多


如果要显示100个大图像,但一次只能看到一个,请使用1或2个图像视图加载当前和下一个图像,并以巧妙的方式设置它们的动画,使其看起来是源源不断的。您仍然可以使用scrollView,只需监视它的位置并适当地定位图像视图。

最好的方法是一次将一些图像加载到表视图中。在表格的每个单元格中,放置三个缩略图。您需要创建一个自定义单元格。这样,表单元格将被取消排队,内存将被重新使用。检查一下Facebook的Three20项目,我认为他们已经这样实现了它,所以你会有一些代码可以使用


最好的方法是一次将一些图像加载到表视图中。在表格的每个单元格中,放置三个缩略图。您需要创建一个自定义单元格。这样,表单元格将被取消排队,内存将被重新使用。检查一下Facebook的Three20项目,我认为他们已经这样实现了它,所以你会有一些代码可以使用


有一个苹果示例代码可以满足您的需要。寻找PageControl示例,它已经实现了。基本上,滑块从一组控制器中获取图像控制器;除此之外,当滚动条更改为上一个或下一个图像时,会动态地在此阵列中添加和删除控制器,以保持较低的内存占用。 看看示例代码,它非常简单。
希望有帮助。

这里有一个苹果示例代码,可以满足您的需要。寻找PageControl示例,它已经实现了。基本上,滑块从一组控制器中获取图像控制器;除此之外,当滚动条更改为上一个或下一个图像时,会动态地在此阵列中添加和删除控制器,以保持较低的内存占用。 看看示例代码,它非常简单。
希望有帮助。

我不想将100个图像加载到内存中我想卸载当前加载的上一个图像并添加(加载)下一个。从内存中删除上一个图像并添加下一个…我不想将100个图像加载到内存中我想卸载当前加载并添加(加载)的上一个图像下一个。从内存中删除上一个,然后添加下一个…我不想要拇指,我只想在用户从一个到另一个时显示下一个图像。我不想要拇指,我只想在用户从一个到另一个时显示下一个图像