我有一个看起来像这样的 NSDictonary。我需要获取与特定名称关联的所有键值。例如,名称 Samrin 与键 11.titleKey、110.titleKey 等相关联。我遇到的问题是我不确定如何获取数组中的对象然后将它们的键值传回?
我尝试了以下代码,但收效甚微。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *stringsPlistPath = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"birthdays.plist"];
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:stringsPlistPath];
NSArray *temp = [dictionary allKeysForObject:@"Samrin Ateequi"];
NSLog(@"temp: %@ ...", temp);
OUTPUT:
temp: (
) ...
最佳答案
我认为您可以为此使用 keysOfEntriesPassingTest
。像这样的东西:
NSSet *keysSet = [dictionary keysOfEntriesPassingTest:^(id key, id obj, BOOL *stop) {
if ([[obj objectAtIndex:0] isEqualToString:@"Samrin Ateequi"]) {
return YES;
} else {
return NO;
}
}];
关于ios - 数组中的 NSDictionary allKeysForObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24657976/