我需要创建几个UI按钮,并希望在创建这些按钮时初始化每个按钮的边框宽度,并在屏幕上组织它们。
Xcode swift编辑器具有配置UI按钮的多个属性的属性,但我没有看到设置边框宽度的方法。另一种选择是通过像
这样的代码来实现button.layer.borderWidth = 1
但是如果我创建了n个按钮,我需要插入n个出口参考来设置每个按钮的边框宽度,这是我不想做的。有没有任何简单的解决方案,以便一旦我创建了一个具有给定边框宽度的按钮,那么我可以使用复制粘贴创建副本。
答案 0 :(得分:1)
您可以通过编程方式执行此类操作。
for view in self.view.subviews
{
if view.isKindOfClass(UIButton)
{
view.layer.borderWidth = 1
}
}
答案 1 :(得分:1)
您可以创建自定义类扩展UIButton。
class BorderButton : UIButton {
init(frame: CGRect) {
super.init(frame: frame)
layer.borderWidth = 1
}
}
此外,您想要像这样自定义borderWidth值:
@IBDesignable
class BorderButton : UIButton {
@IBInsepctable borderWidth: CGFloat = 0 {
didSet {
layer.borderWidth = borderWidth
}
}
init(frame: CGRect) {
super.init(frame: frame)
borderWidth = 1
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
borderWidth = 1
}
}
使用@IBDesignable和@IBInspectable,您可以从故事板中设置borderWidth值。