Objective c 目标C:查询包含可变标签数的单元格设置

Objective c 目标C:查询包含可变标签数的单元格设置,objective-c,ios,memory-management,uilabel,Objective C,Ios,Memory Management,Uilabel,如果要将可变数量的标签添加到单元格内容的视图中,我有一个关于如何设置单元格的设计查询。例如,单元格1需要2个标签,单元格2需要5个标签等 如何以最有效的方式将其添加到我的手机设置中?我是尝试遍历对象数组来确定和设置“cell=nil”中的标签数,还是在循环外部执行 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static N

如果要将可变数量的标签添加到单元格内容的视图中,我有一个关于如何设置单元格的设计查询。例如,单元格1需要2个标签,单元格2需要5个标签等

如何以最有效的方式将其添加到我的手机设置中?我是尝试遍历对象数组来确定和设置“cell=nil”中的标签数,还是在循环外部执行

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString* PlaceholderCellIdentifier = @"PlaceholderCell";

    int row = [indexPath row];

    CustomCell* cell = (CustomCell*)[tableView dequeueReusableCellWithIdentifier:PlaceholderCellIdentifier];
    if (cell == nil)
    {
        cell = [[[CustomCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:PlaceholderCellIdentifier] autorelease]; 

        //Do I create the labels here by looping through the array?
        [cell setupCell];

    }

    //Or do I create them here instead??
    [cell loadContentAndHeight];

    return cell;

}
目前,我没有在“cell=nil”的循环内创建标签,而是在循环外创建所有标签(alloc/init)

for(SomeClass *instance in someObjectArray)
{
    OHAttributLabel *label = [[OHAttributeLabel alloc]initWith........
    [cell.contentview addsubview:label];
}
这里的问题是,在分配工具(在仪器中)中,我观察到标签的重新计数不断增加(参见屏幕截图)。我相信这是因为每当一个细胞被重复使用时,我都在创造新的标签

我相信从长远来看,这将影响我的表格滚动的性能。有谁能告诉我在单元格中实现可变数量标签的最有效方法吗

编辑:添加了泄漏工具的屏幕截图

我检查了泄漏工具,但它没有显示我在tableview代码中泄漏的位置。所有泄漏的项目与我关注的表无关。这是我运行工具的方式吗?

for循环内存泄漏,调用alloc,释放在哪里?在下一次迭代中,您将失去发布它的能力。在instruments中,切换到Leaks以查看泄漏的内容。@alahcur,我检查了Leaks工具(参见我的问题的新屏幕截图),但它没有显示tableview单元格代码中的泄漏。不知道我错过了什么