ios - 对于特定对象,使一个数组等于另一个数组

标签 ios objective-c arrays uitableview

我想做的是使一个数组与另一个数组相等,但对于特定的对象。就像第二个数组包含很多对象一样,我希望第一个数组从第二个数组中获取特定对象,然后在 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
}

最佳答案

您需要保持简单,因此在获得表格 View 后立即选择所需的数据,并将其存储在第三个数组中。

这允许您删除和重新排列行,并使您的数据源方法变得简单。

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) tableView:(UITableView *)tableView numberOfRowsInSection: (NSINteger)section {
    [_tableData count];
}

// etc.

关于ios - 对于特定对象,使一个数组等于另一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33981492/

相关文章:

ios - UIImageView 连接到 _UIBarBackground

ios - 如何在swift中用args调用函数 objective-c

iphone - 使用全局 NSCache 还是每个类一个?

javascript - 对象的方法可以将要恢复的对象本身的名称存储为 JavaScript 中的字符串吗?

java - 对对象数组进行快速排序

javascript - 迭代 3 维数组 - JS

ios - Firebase iOS 推送通知在首次应用启动时未收到

ios - 背景 ImageView 的高度不根据文本调整

ios - 当两个 body 没有联系时如何收到通知?

ios - 从图库 appcelerator ios 中选择图像,花时间打开下一个屏幕