2012-06-26 39 views
0

的屬性的名字,我有一個NSObject的是可以檢測一個NSObject的

@interface MyObject : NSObject 
@property bool pName1; 
@property NSString *pName2; 

我希望在功能檢測性質的名稱(pName1,pName2 ..)

-(void)dosomething:(id)a 

這可能嗎? 歡迎任何評論

+0

您是否查看KVC/KVO? –

+1

@ranReloaded KVC和KVO依靠您已經知道對象的屬性的名稱。如果您想要動態地發現這些名稱,則需要查看Obj-C運行時。 – Caleb

回答

2

您可以使用運行時功能class_copyPropertyList()獲得給定類的屬性列表。還有一個運行時功能property_getName(),它會給你一個給定屬性的名稱。使用這兩個函數,您可以獲取給定對象的所有屬性的名稱。

相關問題