作者:储兰兰快乐 | 来源:互联网 | 2023-01-23 12:47
我经常看到UIControlState.normal
用过,例如设置一个将在所有控制状态中使用titleColor
的UIButton
对象,正如UIButton. setTitleColor
文档所说:
通常,如果未为状态指定属性,则默认使用正常值.如果未设置正常值,则属性默认为系统值.因此,您至少应该设置正常状态的值.
但我也发现UIControlState.init()
被使用,例如以下行:
UIButton.setTitleColor(UIColor, for: UIControlState())
想知道它有何不同,提前谢谢!
1> rmaddy..:
UIControlState.normal
是表示"正常"状态的特定控制状态.
UIControlState()
是一个"空"控件状态,带有一些未记录的默认值.
碰巧的是,这两个都支持原始值0
.所以它们似乎都代表了"正常"状态.
但依靠这一点是不好的做法.默认值可能会更改.使用提供的具体,明确记录的值要好得多.
始终UIControlState.normal
用于"正常"状态.永远不要使用,UIControlState()
因为它的价值没有记录,并且不能保证它总是具有相同的潜在价值UIControlState.normal
.