我看到许多应用程序都有一个异步加载图像的图像框架,而图像尚未加载,它会显示背面的微调器或默认图像。这样做是否有图书馆?如果是,那么它是什么?请不要三十二(我的经历很糟糕)。如果没有,那么你如何创建一个。
答案 0 :(得分:4)
微调器名为UIActivityIndicatorView
,它是UIView的子类,因此可以放在屏幕上的任何位置。
它有startAnimating
和stopAnimating
方法,可以开始和结束“旋转”。
因此,创建UIActivityIndicatorView,将其放在addSubview
所需的位置,然后调用startAnimating
(这就像UI活动一样,必须在主线程上完成)。然后异步调用图像加载代码,当图像完成加载时,在微调器上调用stopAnimating
,将加载的图像放在其上,然后用removeFromSuperview
删除微调器。
答案 1 :(得分:0)
AFAIK,没有内置的Cocoa API可以在一两个电话中执行此操作(这听起来像你想要的那样)。
我个人设置了一个单独的图像缓存管理器,它使用内置的NSURLConnection
类来加载图像,将它们保存到文件系统,然后在请求类(包括一个小子类)上调用委托方法UIImageView
)将加载的图像数据传递给它。
对于类似的任务,SO上的人也会使用ASIHTTPRequest
报告成功。值得一试,我想(虽然我不使用它)。