2. 基于OprationQueue封装的网络数据管理组件
import Foundation
class LJWebImageManager: NSObject {
/// Shared manager used .
public static let shared = LJWebImageManager()
public var ljquee = OperationQueue()
override init() {
if #available(iOS 8.0, *) {
self.ljquee.qualityOfService = .background
} else {
}
}
public func requestByUrl(_ url: String,_ callback: @escaping OpreationClosure) -> LJOpreationManager {
let operation = LJOpreationManager().initWitParamter(url, callback)
ljquee.addOperation(operation)
return operation
}
}
3. 此处下载一张图片
func setCellData(_ labelNameStr:String, imageUrlStr:String)
{
titleLabel.text = labelNameStr as String
/* Session 的delegate模式下载图片或者数据*/
_ = LJWebImageManager.shared.requestByUrl(imageUrlStr, { (data, error) in
if error == nil, data != nil {
let newImage = UIImage(data: data! as Data)
DispatchQueue.main.async{
let titleImage = UIImageView(frame: CGRect(x: 0, y: 5, width: 40, height: 40))
titleImage.image = newImage
self.contentView.addSubview(titleImage)
}
}
else
{
print(error ?? "")
}
})
}

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
注:相关教程知识阅读请移步到IOS开发频道。










