在我的項目中使用不同的框架我經常面臨自定義元素,這些自定義元素創建爲NSObject的類繼承(如果出現錯誤,請糾正我)。創建這種UI元素的主要規則是什麼?創建自定義對象繼承NSObject類
回答
NSObject
是可可中最基本的類。它負責每個類所需的最基本的東西,比如內存管理。 (幾乎)Cocoa中的所有類都從NSObject
繼承,如果要實現模型類,通常需要繼承NSObject
。
如果你想創建自己的GUI元素,你應該子類UIView
或UIControl
。 UIView
將爲您提供自定義繪圖,處理觸摸事件和其他功能的能力。 UIControl
(本身是UIView
的子類)爲用戶可以與其交互的控制元素添加功能,如UITextField
,UISlider
等。如果您計劃實施自定義控件,則應該子類化。
使用自定義對象的主要目的是創建模型類,這有助於存儲可在整個應用程序中使用的數據。
例如, -
@interface ServerResponse
.....
@property (nonatomic, retain) NSString *responseString;
@property (nonatomic, retain) NSArray *errorCodes;
.....
@end
除此之外NSObject
是目的C.大多數類的根類繼承NSObject
班組長的特徵。
'NSObject'在Objective-C中只有*一個*根類。並非所有類都從它繼承。 –
@JonathanGrynspan - 更新。 – rishi
如果您正在創建UI元素,您可以從NSObject
繼承,但是我強烈建議從UIView
或UIControl
繼承。否則,您只需重新創建UIControl
已提供的功能。
此外,如果您只是想將附加功能添加到現有UI元素,則可以擴展(創建類別)以添加該功能。
- 1. 創建自APIView繼承的自定義抽象視圖類
- 2. 創建繼承類的對象
- 3. 創建從基類繼承的對象
- 4. 如何使UIkit對象繼承自定製NSObject
- 5. 繼承和創建對象
- 6. 繼承NSObject繼承Swift通用類
- 7. 從C++類繼承NSObject
- 8. 將DataTable對象轉換爲繼承自DataTable的自定義類對象
- 9. 創建自定義對象
- 10. 類,對象,繼承?
- 11. 自定義對象如何從Javascript繼承對象
- 12. 動態創建@property的定義NSObject類
- 13. 如何使用自定義對象創建自定義對象?
- 14. 用EKEventAttribute自定義NSObject類
- 15. 斯卡拉繼承和對象創建
- 16. 對象創建使用繼承在require.js
- 17. 使用繼承創建新對象
- 18. 創建一個繼承對象數組
- 19. 創建繼承對象的方法
- 20. Javascript原型繼承和對象創建
- 21. 從對象中繼承類定義類型爲元類嗎?
- 22. Swift - 繼承自該類的Cast對象
- 23. 創建一個繼承自UITextfield的類
- 24. 關於繼承類的PHP新self()創建基類對象
- 25. 在對象原型中定義繼承
- 26. 繼承自控件並創建自定義控件
- 27. 自定義字段類型繼承PropertySchema
- 28. 從Panel和VirtualStackPanel繼承自定義類
- 29. 自動創建繼承
- 30. 繼承類從對象
並非所有的類都從'NSObject'繼承。例如,'NSProxy'用於消息轉發(「代理」)類。 –
修復,謝謝。 – DrummerB