我要做的是使一个数组与另一个数组相等,但对于特定对象。就像第二个数组包含很多对象一样,我希望第一个数组从第二个数组中获取特定对象,然后在 NumberOfRowsInSection 中返回它。
这是我尝试过的,但它什么也没返回:
-(NSInteger) tableView: (UITableView * ) tableView numberOfRowsInSection: (NSINteger) section {
NSArray *array;
NSString * foundString;
NSInteger i;
for (i = 0; i < [LabelFilesArray count]; i++) {
if ([[[LabelFilesArray objectAtIndex: i] objectForKey: @"teamSide"] isEqualToString: @"test2"]) {
array = [LabelFilesArray objectAtIndex: i] ObjectForKey: @"teamSide"]; //Here is my problem.
foundString = @"found";
if ([foundString isEqualToString: @"found"]) {
break;
}
}
}
return array.count; //it returns nothing
}
Best Answer-推荐答案 strong>
您需要保持简单,因此在获取数据后立即在 tableview 中选择您想要的数据,并将其存储在第三个数组中。
这允许您删除和重新排列行并使您的数据源方法变得简单。
ViewController.m:
@interface ViewController()
{
NSMutableArray *_tableData;
}
- (void)methodThatGetsData
{
// Get data in LabelFilesArray
_tableData = [NSMutableArray new];
for (NSDictionary *dict in LabelFilesArray) {
for (NSString *filter in _filterArray) {
if (dict[@"teamSide"] isEqualToString:filter]) {
[_tableData addObject:dict];
break;
}
}
}
[_tableView reloadData];
}
-(NSInteger) tableViewUITableView *)tableView numberOfRowsInSection: (NSINteger)section {
[_tableData count];
}
// etc.
关于ios - 使一个数组等于特定对象的另一个数组,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/33981492/
|