UITableView分组隐藏部分分隔符

Jul*_*ert 21 iphone objective-c uitableview ios

我知道之前已经问过这个问题.但互联网上的任何人都没有足够的工作和充分的答案.

编辑显然人们不再读问题了.所以我想澄清一下:我想删除SEPARATOR.分隔符既不是节上面的空格,也不是tableViewHeader或tableViewFooterView.它只是上面的细线(完全从左到右).

我有一个分组UITableView(我不想使用普通风格的其他许多原因,按原样使用),它有多个组.

第一部分的顶部不应有分隔线.设置tableView的分隔符样式不是一个选项,因为我确实需要其他分隔符.

设置tableViews tableFooterView是我经常阅读的内容,但它从未奏效.

之前我使用tableView和静态内容,我可以-[UITableViewController viewDidLoad]使用这个删除分隔符:

- (void)viewDidLoad {
    [[[self headerTableCell] valueForKey:@"_topSeparatorView"] removeFromSuperView];
}
Run Code Online (Sandbox Code Playgroud)

由于我现在必须将tableView更改为动态的,因此该IBOutlet属性将不再起作用(显然).

所以我什么都试过,-[id tableView:willDisplayCell:atIndexPath:],-[UITableViewCell initWithStyle:reuseIdentifier:,prepareForReuse,awakeFromNib]和其他一些人.

无论如何,这个分隔符是零.所以我需要一个在设置单元格的完整视图层次结构时调用的方法.

小智 2

我从你的情况得到的结果是,你有一个分组的 UITableView,你想要第一部分没有分隔符,并且你想要将分隔符保留在其他部分,因此 从属性检查器中从整个表视图中删除分隔符make Separator : None 在故事板中创建自定义 UITableviewCell对于其他部分,并在其末尾添加视图,高度为 1,宽度为整个屏幕(如默认分隔符),这可能不是最好的主意,但这将允许您拥有没有分隔符的第一部分