我对Objective C比较新。我有一个包含NSDictionary对象的NSArray。我正在调用Web服务来获取数据。我有一个PickerView这就是它的数据源(我已经numberOfRows实施):NSArray的NSArray - 在数组中只有一个字典时返回NSDictionary,而不是一个对象的数组
- (NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
NSString *proba = self.viewModel.searchResult.someArray[row];
return nil;
}
这是我的 'PROBA' 与3个NSDictionaries在阵:
这是我的 'PROBA'只有1的NSDictionary在阵列
问题是,我需要有1个NSDiction当我的服务返回1字典时,Array中的oray对象。如何解决这个问题?由于
编辑: 我从服务阵列,这是我的选择
- (void)SOAPManager:(SOAPManager *)client didSuccesWithoutError:(id)responseObject
{
SearchResult *result = [SearchResult new];
result.myArray = [responseObject allValues];
self.Result = result;
NSLog(@"Loaded successfully: %@", result.retailers);
}
“self.Result”与RACObserver观察到,所以我可以用它在我的ViewModel。
这是result.Retailers 3点字典:
这与1个词典:
所以,是的,只有当oneObject,它只返回字典
你的问题不明确,在所有不幸。 picker代码似乎与您的proba数据结构没有任何关系。你是否试图将服务器响应解析为不同的东西?如果是这样,请提供该代码(用于构建该数组的代码)。 – Dima
如果'proba'被声明为NSString,为什么要显示它是一个数组还是字典? –
只是在调试器中看到......我有NSLog – Flipper