Swift——convenience(便利构造函数)和类方法

import UIKit

extension UIButton{

//swit中类方法是以class开头的方法,类似于oc中+开头的方法
class func createButton(imageName:String,bgImageName:String)->UIButton{

let btn=UIButton()
btn.setImage(UIImage(named:imageName), for: .normal)
btn.sizeToFit()

return btn


}

/*
convenience:便利,使用convenience修饰的构造函数叫做便利构造函数
便利构造函数通常用在对系统的类进行构造函数的扩充时使用。
便利构造函数的特点:
1、便利构造函数通常都是写在extension里面
2、便利函数init前面需要加载convenience
3、在便利构造函数中需要明确的调用self.init()

*/

convenience init(imageName:String,bgImageName:String){

self.init()

setImage(UIImage(named:imageName), for: .normal)
setBackgroundImage(UIImage(named:bgImageName), for: .normal)
sizeToFit()
}


}

原文地址:https://www.cnblogs.com/wangbinios/p/9450246.html