swift--拓展UIView来简化圆角,和阴影的设置

对新手说:不论是UIButton,UILabel等,都是继承自UIView类,所以该拓展通用。

具体代码如下: 

import UIKit

extension UIView {
    //设置圆角
    public func setCornerRadius(cornerRadius:CGFloat, masksToBounds:Bool = true){
        self.layer.cornerRadius = cornerRadius
        self.layer.masksToBounds = masksToBounds
    }
    //设置阴影
    //预设一组常用的参数
    public func setShadow(color:CGColor = UIColor.darkGray.cgColor,
                          offset:CGSize = CGSize(width: 2, height: 2),
                          radius:CGFloat = 5,
                          opacity:Float = 1){
        self.layer.shadowColor = color
        self.layer.shadowOffset = offset
        self.layer.shadowRadius = radius
        self.layer.shadowOpacity = opacity
        self.layer.masksToBounds = false
    }
}

使用方法

let label = UILabel()
label.setShadow()
label.setCornerRadius(cornerRadius: 10)

说明:虽然我们只写了一个 setShadow 方法,但是使用 label.setShadow() 之后会出现两个同名方法一个需要传参数,一个不需要。这是因为我们添加了初始值,我们可以选择不传或者传入部分参数。

 

 

Guess you like

Origin blog.csdn.net/weixin_41735943/article/details/103187203