typedef NS_ENUM(NSInteger, UIButtonType) { UIButtonTypeCustom = 0, // no button type UIButtonTypeSystem NS_ENUM_AVAILABLE_IOS(7_0), // standard system button UIButtonTypeDetailDisclosure, UIButtonTypeInfoLight, UIButtonTypeInfoDark, UIButtonTypeContactAdd, UIButtonTypeRoundedRect = UIButtonTypeSystem, // DePRecated, use UIButtonTypeSystem instead }; 不管返回什么類型的對象,他們都繼承于UIButton。使用者不用關系創建的button屬于哪個子類和具體的實現細節。 注意:如果對象所屬的類位于某個族類中,查詢類的信息時需要注意,對象可能是某個子類的實例,而不是基類的實例。 向族類中新增實體子類,規則: 1.子類應該繼承自基類中的某個抽象基類 2.子類應該定義自己的數據存儲方式,基類只是眾多子類的“殼”,僅僅定義了子類通用的接口 3.子類必須覆寫超類中指明需要覆寫的方法 要點: 1.類族模式可以把實現細節隱藏在一套公共接口后面 2.系統框架中經常使用族類,UIButton,NSArray
新聞熱點
疑難解答