如何隐藏空的UITableCells?我的Tablecell包含一个背景,所以我尝试了这行代码
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 100)];
view.backgroundColor = [UIColor whiteColor];
return view;
}
但它不起作用(因为我的uitablecell背景)
背景:
[tabelView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"table.png"]]];
答案 0 :(得分:1)
如果要删除虚拟分隔符,则必须将表视图分隔符样式设置为none,如下所示:
tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
请注意,这也会隐藏非空单元格之间的分隔符。如果你想显示它们之间的界限,你必须自己照顾它,例如使用自定义UITableViewCell
,在顶部/底部有1px行。
答案 1 :(得分:0)
是否要隐藏部分中的页脚或单元格?
如果你有多个部分,你可以检查代表实际上是哪个部分。
If (section == 0) {
Return view;
}
答案 2 :(得分:0)
Swift 2.0中的版本
如果您希望tableViewController仅显示已定义的单元格,则必须使用具有清晰颜色背景的空UIView实现委托方法tableView(tableView:, viewForFooterInSection section:) -> UIView?
。
在这种情况下,如果您定义方法tableView(tableView: UITableView, numberOfRowsInSection section: Int)
以返回3个单元格,则只有3个可见单元格没有分隔符或其他单元格上的任何背景。
这里有viewForFooterInSection
的示例实现:
override func tableView(tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
let view = UIView()
view.backgroundColor = UIColor.clearColor()
return view
}