我有一個NSTableview綁定到NSArrayController。表/數組控制器包含核心數據「人」實體。人們被GUI用戶添加到NSTableview。迭代NSTableview或NSArrayController獲取數據
比方說,一個人的實體看起來像
NSString* Name;
int Age;
NSString* HairColor;
現在我要遍歷什麼是存儲在陣列控制器在它執行某些操作。我想要做的實際操作並不重要,我不想陷入自己想要處理的信息中。它只是遍歷NSArray控制器中所有讓我困惑的事情。我來自C++和C#背景,是Cocoa的新成員。比方說,我想在未來1年內構建一個包含來自nsarraycontroller的每個人的NSMutableArray。
所以我希望做這樣的事情
NSMutableArray* mutArray = [[NSMutableArray alloc] init];
foreach(PersonEntity p in myNsArrayController) // foreach doesn't exist in obj-c
{
Person* new_person = [[Person alloc] init];
[new_person setName:p.name];
[new_person setHairColor:p.HairColor];
[new_person setAge:(p.age + 1)];
[mutArray addObject:new_person];
}
我認爲唯一抱着我從做類似的代碼回以上是在的foreach對象 - 不存在。我只是看不到如何迭代nsarraycontroller。
注:這是OSX所以我有垃圾收集打開