2012-07-02 34 views
0

在我的項目中使用不同的框架我經常面臨自定義元素,這些自定義元素創建爲NSObject的類繼承(如果出現錯誤,請糾正我)。創建這種UI元素的主要規則是什麼?創建自定義對象繼承NSObject類

回答

4

NSObject是可可中最基本的類。它負責每個類所需的最基本的東西,比如內存管理。 (幾乎)Cocoa中的所有類都從NSObject繼承,如果要實現模型類,通常需要繼承NSObject

如果你想創建自己的GUI元素,你應該子類UIViewUIControlUIView將爲您提供自定義繪圖,處理觸摸事件和其他功能的能力。 UIControl(本身是UIView的子類)爲用戶可以與其交互的控制元素添加功能,如UITextField,UISlider等。如果您計劃實施自定義控件,則應該子類化。

+0

並非所有的類都從'NSObject'繼承。例如,'NSProxy'用於消息轉發(「代理」)類。 –

+0

修復,謝謝。 – DrummerB

1

使用自定義對象的主要目的是創建模型類,這有助於存儲可在整個應用程序中使用的數據。

例如, -

@interface ServerResponse 
..... 
@property (nonatomic, retain) NSString *responseString; 
@property (nonatomic, retain) NSArray *errorCodes; 
..... 
@end 

除此之外NSObject是目的C.大多數類的根類繼承NSObject班組長的特徵。

+0

'NSObject'在Objective-C中只有*一個*根類。並非所有類都從它繼承。 –

+0

@JonathanGrynspan - 更新。 – rishi

1

如果您正在創建UI元素,您可以從NSObject繼承,但是我強烈建議從UIViewUIControl繼承。否則,您只需重新創建UIControl已提供的功能。

此外,如果您只是想將附加功能添加到現有UI元素,則可以擴展(創建類別)以添加該功能。