联盟控制状态

时间:2015-11-24 12:58:25

标签: ios objective-c swift

我想制作二元或UIControlState。在obj-C中我会使用二进制|运算符,但在swift中我必须使用:

imageView.setBackgroundImage(blueBackground, forState: UIControlState.Highlighted.union(.Selected))

但是上面的代码(特别是如果我有超过两个状态来建立联盟)很难理解。有没有更简单的方法可以做到:

imageView.setBackgroundImage(blueBackground, forState: UIControlState.Highlighted | UIControlState.Selected)

1 个答案:

答案 0 :(得分:3)

对于OptionSetType,只需将它们放入一个数组中,如下所示:

 imageView.setBackgroundImage(blueBackground, forState: [.Highlighted, .Selected])