3
的阵列中的标题是有点混乱存在......我会解释如何检查是否在一个NSDictionary的值dictionarys
我有一个NSMutableArray
我与NSMutableDictionary
对象填充。我试图做的是在将字典对象添加到数组之前,我需要检查是否有任何字典包含的值等于已设置的ID。
实施例:
步骤1:A按钮被点击设置对象的id用于建立的图。
步骤2:在所述视图中按下另一个按钮以将其内容的一部分保存到字典中,然后将所述字典添加到数组中。但是,如果已建立的ID已作为其中一个字典键的值存在,请不要插入此字典。
下面是一些代码,我有一个目前没有工作:
-(IBAction)addToFavorites:(id)sender{
NSMutableDictionary *fav = [[NSMutableDictionary alloc] init];
[fav setObject:[NSNumber numberWithInt:anObject.anId] forKey:@"id"];
[fav setObject:@"w" forKey:@"cat"];
if ([dataManager.anArray count]==0) { //Nothing exists, so just add it
[dataManager.anArray addObject:fav];
}else {
for (int i=0; i<[dataManager.anArray count]; i++) {
if (![[[dataManager.anArray objectAtIndex:i] objectForKey:@"id"] isEqualToNumber:[NSNumber numberWithInt:anObject.anId]]) {
[dataManager.anArray addObject:fav];
}
}
}
[fav release];
}
你想让你的代码在哪个版本的iOS上运行?如果你使用的是iOS 4.0以上的版本,那么这很容易。 – kubi 2010-09-14 15:02:28
不需要特殊的“空”情况。而你的循环内逻辑是错误的。你首先需要检查它是否在*任何*中,并且在循环之后,如果需要的话添加。 – Eiko 2010-09-14 15:09:36
这实际上是在iPad,iOS 3.2上运行。 – rson 2010-09-14 15:33:01