Swift创建UIButton样式的通用类

时间:2018-08-25 06:09:17

标签: ios swift uibutton

我在多个类文件中使用具有相同外观的多个按钮,但操作和标题不同。因此,我需要创建公共类,而所有其他类都需要为UIButton阴影外观引用它。

另外,请让我知道哪个是UIReusability的最佳扩展或通用类。

下面的代码我正在使用

sbutton.layer.cornerRadius = 21
sbutton.clipsToBounds = true
sbutton.layer.shadowColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.25).cgColor
sbutton.layer.shadowOffset = CGSize(width: 0.0, height: 2.0)
sbutton.layer.shadowOpacity = 1.0
sbutton.layer.shadowRadius = 1.0
sbutton.layer.masksToBounds = false

1 个答案:

答案 0 :(得分:-1)

在Swift 4.1和Xcode 9.4.1中

我为此使用了共享类(每次使用一次写一次)

import UIKit
class SharedClass: NSObject {

    static let sharedInstance = SharedClass()

    func styleForComponents(button: UIButton) {
        button.layer.cornerRadius = 21
        button.clipsToBounds = true
        button.layer.shadowColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.25).cgColor
        button.layer.shadowOffset = CGSize(width: 0.0, height: 2.0)
        button.layer.shadowOpacity = 1.0
        button.layer.shadowRadius = 1.0
        button.layer.masksToBounds = false
    }

    private override init() {

    }

}

在整个项目中像这样调用此函数

SharedClass.sharedInstance.styleForComponents(button: sbutton)