2013-11-28 24 views
0

我在我的应用程序中实现了图像Slider,我想我知道如何去做,但效率不高。实现图像滑块的最佳方法

我得到的图像URL's(我不知道电话号码,可以是1或者20,也许更多之间。)所以我要在view然后显示,并且用户可以Swipe传递到下一张图片或者回到之前的照片。

所以,我想知道如果它更好地与G.C.Dblocks,或与它一起。如果是GCD。我应该填写并NSMutableData与下载的图像到UIview,然后使swipe ..?如果在每个​​之后下载图片,效果会更好吗?

我不知道如何管理这个。有任何想法吗?

+0

您可以使用sdwebimage库或可以异步下载图像,直到图像加载显示活动指示符。 –

回答

0

您不想同时在内存中保存多个大图像。你有两个问题需要解决:1.异步下载镜像,并一次加载一个镜像。

下载图像的方法是使用NSURLConnection。 NSURLConnection中有一个新的类方法(sendAsynchronousRequest:queue:completionHandler:,在iOS 5中添加),它将下载整个文件并在完成后调用块。比创建连接并处理各种委托方法的代码更容易使用。

您可以一次开始多次下载,系统负责管理它们。然而,我建议一次只能做3个以内。

第二个问题是如何显示图像。我建议使用具有过渡样式UIPageViewControllerTransitionStyleScroll的UIPageViewController。

如果你的图片足够大,那么你应该真的平铺它们。

在Xcode文档中有一个来自Apple的示例应用程序,名为PhotoScroller。它显示了如何使用UIPageViewController和图像平铺来处理多个大图像。如果你的图像不是那么大,那么平铺可能会矫枉过正。处理平铺图像当然很复杂。

+0

我必须以320,200大小的小UIImageView显示图像,我应该可以在那里进行滑动并按下图像并全屏观看。我使用AFNetworking Library的所有请求,所以我想最好继续使用它。我喜欢你的建议,我会尝试使用它与AFNetworking – croigsalvador