我有plist文件,我正在使用CHDictionary来订购它们。当我使用“allKeys”获取密钥时,没有问题。
以下是样本:
//1
NSString *pathListNames = [[NSBundle mainBundle] pathForResource:@"menuListNames" ofType:@"plist"];
//2
CHOrderedDictionary *dictName = [[CHOrderedDictionary alloc] initWithContentsOfFile:pathListNames];
//3
NSArray *temp = [dictName allKeys];
NSLog(@"KEY FIRST ONE %@", temp[0]);
但是当我想获得一些指定范围的键时,我决定使用“keysAtIndexes”,如下所示:
//1
NSString *pathListNames = [[NSBundle mainBundle] pathForResource:@"menuListNames" ofType:@"plist"];
//2
CHOrderedDictionary *dictName = [[CHOrderedDictionary alloc] initWithContentsOfFile:pathListNames];
//3
NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 3)];
NSArray *temp = [dictName keysAtIndexes:indexSet];
NSLog(@"KEY FIRST ONE %@", temp[0]);
我得到像这样的例外
“'NSInvalidArgumentException',原因:' - [__ NSCFDictionary keysAtIndexes:]:无法识别的选择器发送到实例”。
如果有人能告诉我为什么keysAtIndexes:indexSet导致异常,我会很高兴。
先谢谢。