ios - 使用 Alamofire 将图像加载到 UITableViewCell 并圆角

标签 ios swift uitableview alamofire alamofireimage

Alamofire 有一种非常方便的方法可以直接从 URL 加载图像作为 UIImageView 扩展。

cell.avatarImageView.af_setImageWithURL(downloadURL)

我还想将图像的角变圆。 AlamofireImage 也有一个方法可以做到这一点(它是一个 UIImage 扩展),

image.af_imageRoundedIntoCircle()

但是有没有办法同时使用这两种方法呢?第一个方法直接调用 UIImageView 而不是 UIImage,所以我无法使用它。

如果我在 af_setImageWithURL 调用之后调用类似的内容,

cell.avatarImageView.image = cell.avatarImageView.image?.af_imageRoundedIntoCircle()

它仅在 tableView 单元格重绘时起作用。它对已经可见的细胞没有影响。

还有其他方法可以实现这一点吗?或者有解决方法吗?

最佳答案

是的,有一个方法:

public func af_setImage(
        withURLRequest urlRequest: URLRequestConvertible,
        placeholderImage: UIImage? = nil,
        filter: ImageFilter? = nil,
        progress: ImageDownloader.ProgressHandler? = nil,
        progressQueue: DispatchQueue = DispatchQueue.main,
        imageTransition: ImageTransition = .noTransition,
        runImageTransitionIfCached: Bool = false,
        completion: ((DataResponse<UIImage>) -> Void)? = nil)

您应该指定 CircleFilter() 作为圆形 ImageView 的 filter 参数,或者 RoundedCornersFilter(radius: CGFloat,divideRadiusByImageScale: Bool) 如果您想要圆角

关于ios - 使用 Alamofire 将图像加载到 UITableViewCell 并圆角,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39611564/

相关文章:

javascript - iOS 和 javascript 库之间的 HMAC SHA-512 生成差异

ios - 切换标签后出现黑屏

swift - 如何将文本添加到事件的 UITextField

iphone - 编辑嵌入的 UITextView 时 UITableView 滚动太远

ios - Bundle.main.path(forResource :ofType:inDirectory:) returns nil

ios - 使用存在于另一个函数中的 prepareForSegue 传递变量

ios - 自定义 MKAnnotationView 可展开,无需标注

ios - 如何限制Parse上查询的结果在 `query.limit`后面

ios - 为什么我的 UISwitches 状态总是打开?

ios - 尝试在 Swift 上继承 UITableViewCell