有没有办法从UITableView中删除分隔线?

时间:2009-05-29 09:15:08

标签: objective-c cocoa-touch uikit

我正在寻找一种在普通模式下完全删除UITableView中的分隔线的方法。这是在分组中自动完成的,但这也会以难以衡量的方式更改表的尺寸。我已将分隔线颜色设置为colorClear。但这并没有完全解决问题。

当我试图在单元格中绘制自定义背景视图,并且我希望单元格无缝时,保留在其间的一条像素线会导致我出现问题。是否有更优雅的解决方法,然后使用分组视图,然后拉伸它?

9 个答案:

答案 0 :(得分:447)

您可以使用UITableView属性separatorStyle执行此操作。确保该属性设置为UITableViewCellSeparatorStyleNone并且您已设置。

目标-C

self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;

在Swift(3之前)

tableView.separatorStyle = .None

在Swift 3中

tableView.separatorStyle = .none

答案 1 :(得分:62)

- (void)viewDidLoad {
    [super viewDidLoad];
    [self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];
}

答案 2 :(得分:62)

您也可以在storyboard / xib编辑器中执行此操作。只需将Separator设置为none。

enter image description here

答案 3 :(得分:18)

在尝试其他答案后,我仍然有一条深灰色的线条。我不得不添加以下两行,以便在单元格之间的行线方面使所有内容“不可见”。

self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
self.tableView.separatorColor = [UIColor clearColor];

答案 4 :(得分:9)

在斯威夫特:

tableView.separatorStyle = .None

答案 5 :(得分:8)

在界面构建器中设置表视图分隔符“无”

enter image description here 并且可以通过以下方法移除在最后一个单元格之后显示的那些分隔线。 最好的方法是将空视图分配给viewDidLoad中的tableView FooterView

self.tableView.tableFooterView = UIView()

答案 6 :(得分:5)

iOS 9 beta 4存在错误:即使您从故事板中将UITableViewCell设置为separatorStyle,分隔线也会显示在UITableViewCellSeparatorStyleNone之间。要解决这个问题,你必须从代码中设置它,因为截至目前,故事板中存在一个错误。希望他们能在未来的测试版中修复它。

以下是设置它的代码:

[self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];

答案 7 :(得分:2)

在ViewDidLoad方法中,您必须编写此行。

tableViews.separatorStyle = UITableViewCellSeparatorStyleNone;

这是有效的代码。

答案 8 :(得分:1)

viewDidLoad

self.tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];
if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)])
{
    [self.tableView setSeparatorInset:UIEdgeInsetsZero];
}