简述
对于一些平常不太关注的事情来说,我们认为其的发生是理所当然,当问题蹦出后,“我靠( ‵o′)凸,按道理不应该这样啊 ~ ” 随之而出。
这次,我就被 UIButton 的 State 狠狠调戏了一番。
探讨
初次认知 UIButton 的时候我就会被其的各种状态折磨得头昏脑涨,后来随着见面次数的增加,慢慢了解到其的状态实际上是位的枚举集合。
那么,首先我们来瞜一眼苹果官方DOC。
Swift 版本 UIControl (UIButton直接父类) 的 State
从这个DOC中,我们可以认知到:
1 控件的状态是一个集合 (也就是说 可能同时存在 selected | disabled 的情况)
2 每一个状态对应一个 Int 值,可以通过 Int 值来反推集合内部组成
3 iOS 9以后 又添加了几种枚举 (逻辑更加复杂了,我们暂时不考虑它们)
Swift 版本 DOC 内部介绍并不是那么的完整,不过我依稀记得 OC 版本是有介绍的,让我们来欣赏一下 OC 版本DOC。
Objective-C 版本 UIControl (UIButton直接父类) 的 St