相关疑难解决方法(0)

使用块从后台线程加载图像

我有以下方法,它基本上调用请求在后台线程中加载图像的NSData数组:

[query findObjectsInBackgroundWithBlock:^(NSArray * objects, NSError * error){

}];
Run Code Online (Sandbox Code Playgroud)

在这种情况下,objects是NSData的数组.问题是,如果我要加载100个图像(数组中有100个元素).这意味着用户必须等待一段时间才能看到UITableView中出现的任何图像.我想要做的是让他们看到图像一旦可用/加载..我是否必须更改代码,以便它执行100个后台线程来加载图像?

iphone objective-c ipad

11
推荐指数
1
解决办法
2万
查看次数

在 Swift 中缓存 collectionViewCell 中的图像?

我的 collectionViewCell 中有通过 NSURLRequest 获取和解析的图像,如何缓存这些图像,以便它们不必在视图的每次出现/消失时启动新请求?

这是我获取图像的代码:

class funnyPicture: NSObject {

    var pfPicture : PFObject
    var coverImage : UIImage!

    init(pfPicture: PFObject) {
        self.pfPicture = pfPicture
    }

    func fetchCoverImage(completion: (image: UIImage?, error: NSError?) -> Void) {
        let urlString = self.pfPicture["funnyPictures"] as! String
        let url = NSURL(string: urlString)
        let request = NSURLRequest(URL: url!)
        let queue = dispatch_get_main_queue()

        NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) { (response: NSURLResponse?, data: NSData?, error: NSError?) in
            if error == nil {
                self.coverImage = UIImage(data: data!)
                completion(image: self.coverImage, error: nil)
            } else …
Run Code Online (Sandbox Code Playgroud)

caching ios parse-platform uicollectionviewcell swift

5
推荐指数
1
解决办法
1万
查看次数