如何解决翠鸟从URL加载图像并设置角半径
我使用SnapKit布局imageView并通过Kingfisher从URL加载图像,我也想通过Kingfisher设置拐角半径(使用RoundCornerImageProcessor
),如果我设置了targetSize,图片会变形,如果未设置,则只是拐角半径,我无法获得想要的结果。
我该怎么办?
解决方法
您可以像这样为kingFisher轻松设置图像:
import UIKit
import Kingfisher
class ViewController: UIViewController {
@IBOutlet weak var image:UIImageView!
let rawstring = "https://apis.baytelhekma.com/zinzo/public/storage/products/November2020/eUWwRjNCYCdHUjGIQiJk.png"
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: rawstring)
image.kf.setImage(with: url)
}
}
然后您可以通过将角半径添加到项目中来创建角半径:
import Foundation
import UIKit
extension UIView {
@IBInspectable
var cornerRadius: CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue
layer.masksToBounds = newValue > 0
}
}
@IBInspectable
var borderWidth: CGFloat {
get {
return layer.borderWidth
}
set {
layer.borderWidth = newValue
}
}
@IBInspectable
var borderColor: UIColor? {
get {
let color = UIColor(cgColor: layer.borderColor!)
return color
}
set {
layer.borderColor = newValue?.cgColor
}
}
}
之后,您所需要做的就是在您的ViewController
中进行以下操作:
image.cornerRadius = 15 // you can set it with the number fits your app
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。