【问题标题】:Custom UIbutton default color Xcode Swift自定义 UIbutton 默认颜色 Xcode Swift
【发布时间】:2018-12-10 15:14:09
【问题描述】:

我正在尝试像这样创建一个自定义 UIButton 类,但我没有看到背景颜色更新,它也没有在检查器中显示为默认颜色。我希望它是这样的,这样我就可以从这个类文件中更改这些实例的所有颜色,而不必为每个按钮手动设置它。

import UIKit

@IBDesignable class PrimaryButton: UIButton {

    @IBInspectable var borderwidth: CGFloat = 0.0 {
      didSet {
        self.layer.borderWidth = borderwidth
      }
   }
   @IBInspectable var cornerradius: CGFloat = 4.0 {
      didSet {
        self.layer.cornerRadius = cornerradius
      }}
   }
    @IBInspectable var backgroundcolor: UIColor = UIColor.red {
      didSet {
        self.layer.backgroundColor = backgroundcolor.cgColor
      }
    }
}

【问题讨论】:

  • 您能详细说明一下吗,您需要对 IB 中的所有按钮应用相同的设置吗?
  • @Sh_Khan 我只需要将设置应用于此类的所有按钮。
  • 看看下面的答案是不是你需要的
  • @Sh_Khan 是的,虽然我希望我能够在检查器中查看它

标签: ios swift uibutton


【解决方案1】:

您可以尝试创建这样的自定义类,然后为 IB 中的任何按钮设置它

@IBDesignable class MyNewButton: UIButton {

    override init(frame: CGRect) {
        super.init(frame: frame)
        shared()
    }
    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        shared()
    }

   override func prepareForInterfaceBuilder() {
       super.prepareForInterfaceBuilder()
       shared()
   }
   func shared() {

        //TODO: add any custom settings here
        self.layer.cornerRadius = value
        self.layer.borderWidth = value
        self.layer.borderColor = UIColor.red.cgColor
   }

}

【讨论】:

  • 哟!非常感谢!你太棒了
猜你喜欢
  • 2015-01-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-20
  • 2021-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多