在按钮上设置自定义属性

Set custom attribute on button

如何在以编程方式创建的按钮上设置自定义属性?

我有这个代码来创建一个按钮:

var btn = UIButton(frame: CGRectMake(CGFloat(7 + add), 565, 39, 55))     
            btn.setTitle(String(Array(shuffledWord)[i...i]), forState: UIControlState.Normal)
            btn.addTarget(self, action: "btnPressed:", forControlEvents: UIControlEvents.TouchUpInside)
 btn.tag = 7 + add;

我可以为 .tag 赋予一些价值,但还有更多类似的东西吗?我可以创建自定义属性以在按钮上设置吗?

如果您需要 class 上不属于您的自定义属性,请将其子class 并改用子class。

class MyCoolButton : UIButton {
    var myCoolProperty : String = "coolness"
}

以后:

var btn = MyCoolButton( // ...

首先,我会先查看 class 参考文献 here

您希望直接更改按钮的哪些属性?您可以设置它的标题颜色、字体、边框color/width、corner-radius等

其中很多可以通过访问按钮层来改变,如

btn.layer.borderWidth = 2.0 和那种性质的东西。

编辑:如果您想添加自定义功能或存储一些属性,那么我会参考 Matt 关于 subclassing 的回答。