Ios 将UIButton添加到UITableViewCell,以防搜索没有结果,空数组

Ios 将UIButton添加到UITableViewCell,以防搜索没有结果,空数组,ios,objective-c,uitableview,Ios,Objective C,Uitableview,我得到了以下代码,以便在第一个UITableViewCell上显示一个按钮,以防带有搜索结果的NSArray为空。现在,我的numberOfRowsInSection具有NSArray+1,这样,我的表将始终至少有一个单元格 这在mycellForRowAtIndexPath中: if ([cell.contentView viewWithTag:1]) { [[cell.contentView viewWithTag:1] removeFromSuperview]; }

我得到了以下代码,以便在第一个
UITableViewCell
上显示一个
按钮,以防带有搜索结果的
NSArray
为空。现在,我的
numberOfRowsInSection
具有
NSArray
+1,这样,我的表将始终至少有一个单元格

这在my
cellForRowAtIndexPath
中:

if ([cell.contentView viewWithTag:1]) {
        [[cell.contentView viewWithTag:1] removeFromSuperview];
    }

    if ((self.searchDisplayController.isActive && indexPath.row == [self.searchResults count]) || (!self.searchDisplayController.isActive && indexPath.row == [[self pegarObjetosUnicos] count])) {

        // Create UIButton
        UIButton *botaoProcurar = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        botaoProcurar.frame = CGRectMake(0, 0, 320, 50);
        botaoProcurar.showsTouchWhenHighlighted = YES;
        [botaoProcurar setTitle:@"Procurar no Banco de Dados" forState:UIControlStateNormal];
        botaoProcurar.tag = 1;
        [botaoProcurar addTarget:self action:@selector(botaoProcurar) forControlEvents:UIControlEventTouchUpInside];
        [cell.contentView addSubview:botaoProcurar];
        cell.textLabel.text = @"";
        return cell;
    }
代码首先删除一个子视图(如果找到),然后创建并添加
按钮作为
子视图(如果搜索
数组
为空)

它工作得很好,我对这段代码没有任何问题,但是因为我现在需要做类似的事情,我只是想知道这是否是最好的方法。我只是不习惯为tableview必须渲染的每个单元格运行此代码。当数据库连接返回空时,我考虑将按钮添加到
NSArray
,但这仍然不是一个好代码


任何关于更客观、更干净的代码的建议都会很好。如果没有,那么“加油!你做得很好”也会起作用

应该将按钮放在tableview的页眉或页脚中。如果数组有结果,请删除tableview的页脚或页眉。如果数组没有结果,请将视图添加到页脚或页眉。您应该将此代码放在决定数组是否有数据的函数中。通过这种方式,UIBUtton的位置不依赖于单元格,因此现在不必为tableview中的每个单元格运行它