2014-11-05 96 views
0

我在界面生成器中设置了一个静态表格视图,但在某些情况下,我不希望显示某些单元格。使用静态单元完成此操作的最佳方法是什么?我真的想使用静态单元,因为a)它是有意义的,因为没有数据源,并且b)我使用IBDesignable/IBInspectable呈现静态视图,并且希望保持这种状态。有条件地显示静态单元格表​​格中的单元格

回答

2

您应该可以添加UITableViewDelegate方法tableView:heightForRowAtIndexPath:并且您不希望显示的任何行返回0。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    CGFloat rowHeight = 44.0; 
    if (indexPath.row == /* a row you want to hide */) { 
     rowHeight = 0.0; 
    } 
    return rowHeight; 
} 
+0

我曾想过做这样的说法,但也有一些原因,我选择了不走这一点: 原因之一,我有背景颜色的;在willDisplay中,我根据indexPath.row%2设置了背景颜色 - 隐藏行而不删除它们打破了这个功能。另外,我在这些行中有文本字段,并链接了第一批响应者 - 如果行在技术上仍然存在,它将导致隐藏文本字段成为第一响应者。 – dMurdZ 2014-11-05 19:31:50

相关问题