美文网首页
swift 4.2 高效绘制圆角

swift 4.2 高效绘制圆角

作者: Skylpy | 来源:发表于2018-11-28 17:13 被阅读7次

    //高效绘制圆角UIImageView
    extension UIImageView{
        func setCornerImage(){
            //异步绘制图像
            DispatchQueue.global().async(execute: {
                //1.建立上下文
                UIGraphicsBeginImageContextWithOptions(self.bounds.size, true, 0)
                //获取当前上下文
                let ctx = UIGraphicsGetCurrentContext()
                //设置填充颜色
                UIColor.white.setFill()
                UIRectFill(self.bounds)
                //2.添加圆及裁切
                ctx?.addEllipse(in: self.bounds)
                //裁切
                ctx?.clip()
                //3.绘制图像
                self.draw(self.bounds)
                //4.获取绘制的图像
                let image = UIGraphicsGetImageFromCurrentImageContext()
                //5关闭上下文
                UIGraphicsEndImageContext()
                DispatchQueue.main.async(execute: {
                    self.image = image
                })
            })
        }
    }

    相关文章

      网友评论

          本文标题:swift 4.2 高效绘制圆角

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