美文网首页
Swift 因表视图刷新导致网络图片闪烁的问题

Swift 因表视图刷新导致网络图片闪烁的问题

作者: CYC666 | 来源:发表于2023-08-16 10:22 被阅读0次

    解决方案:使用网络缓存的图片

    
        // import YYWebImage
    
        // MARK: 设置网络图片
        func c_webImage(_ url: String, _ placeholder: String = "EXAssets40") {
            if let image = YYWebImageManager.shared().cache?.getImageForKey(url) {
                
                self.image = image
            } else {
                if let imgUrl = URL.init(string: url) {
                    
                    
                    YYWebImageManager.shared().requestImage(with: imgUrl,
                                                            options: .useNSURLCache,
                                                            progress: nil,
                                                            transform: nil){[weak self] (image, url , type, stage, err) in
                            
                            guard let `self` = self else {return}
                            
                            DispatchQueue.main.async(execute: {
                                if let downloadedImg = image {
                                    self.image = downloadedImg
                                } else {
                                    self.image = UIImage.init(named: placeholder)
                                }
                            })
                        }
                } else {
                    self.image = CTools.getImage(placeholder)
                }
            }
        }
    
    

    相关文章

      网友评论

          本文标题:Swift 因表视图刷新导致网络图片闪烁的问题

          本文链接:https://www.haomeiwen.com/subject/xwpkmdtx.html