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() 之後會出現兩個同名方法一個需要傳參數,一個不需要。這是因爲我們添加了初始值,我們可以選擇不傳或者傳入部分參數。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章