繁体   English   中英

Kingfisher 从 url 加载图像并设置角半径

[英]Kingfisher load image from url and set corner radius

我使用 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 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM