Я новичок в объективе-c и мне нужна помощь. В приведенном ниже коде, если xml содержит только один элемент, вызовы objectForKey приведут к созданию одного элемента вместо NSArray с одним элементом. Как мне обновить код, чтобы убедиться, что строка:
[[ApplicationManager sharedInstance] setTags:[[result objectForKey:XML_OPTION_LIST] objectForKey:XML_OPTION]];
всегда вызывает setTags с NSArray (даже если xml содержит ноль или один элемент)?
NSString *XMLResponse = [request responseString];
NSError *parseError = nil;
NSDictionary *xmlDictionary = [XMLReader dictionaryForXMLString:XMLResponse error:&parseError];
NSDictionary *result = [xmlDictionary objectForKey:XML_RESULT];
if ([[[result objectForKey:XML_ERROR_CODE] objectForKey:XML_TEXT] isEqualToString:XML_ERROR_NONE]) {
[[ApplicationManager sharedInstance] setTags:[[result objectForKey:XML_OPTION_LIST] objectForKey:XML_OPTION]];
[[ApplicationManager sharedInstance] save];
}
Элемент xml OPTION_LIST содержит один или несколько элементов OPTION. Когда возникает только один элемент OPTION, возникает ошибка (выходящая за рамки этого кода).
Я ценю вашу помощь.