如何删除 UITableView 中的单元格分隔符?

Posted

技术标签:

【中文标题】如何删除 UITableView 中的单元格分隔符?【英文标题】:How to remove cell separators in UITableView? 【发布时间】:2016-01-04 23:48:48 【问题描述】:

我想删除UITableView 中的单元格分隔符。这是我的模拟器目前的样子:

我在视图控制器的.swift文件的viewDidLoad:方法中实现了下面这行代码:

self.tableView.separatorStyle = UITableViewCellSeparatorStyle.None

这似乎不起作用。

如何去除单元格分隔符?

这是我的cellForRowAtIndexPath: 代码:

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
        let cellIdentifier = "Cell"
        let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier, forIndexPath: indexPath) as! RestaurantsTableViewCell

        // Configure the cell...
        cell.nameLabel.text = restaurants[indexPath.row].name
        cell.typeLabel.text = restaurants[indexPath.row].type
        cell.mainImageView.image = UIImage(named: restaurants[indexPath.row].image)

    return cell


【问题讨论】:

那一行应该足够了,我认为你的行之间可能有一些填充。为您的 tableView 发布一些代码。 @RashwanL 你想看什么代码? 从函数cellForRowAtIndexPath开始。 @RashwanL 我已经添加了这段代码。 你确定你的图片没有边框吗? 【参考方案1】:
    检查单元格的布局,尤其是顶部和底部约束。 检查单元格的内容视图。您是否将剪辑的边界设置为true?

以上所有内容都应在代码和 IB 中检查。

【讨论】:

应该有哪些布局约束? 另外,clipsToBoundsviewDidLoad: 方法中设置为true。 更新了我的答案。也检查内容视图的拉伸。 什么是超级视图? @AnnabelleSykes 你是什么意思?内容视图的超级视图?它是表格视图单元格。具有该约束的视图的超级视图?只是内容视图中的图像视图。【参考方案2】:

要隐藏分隔线,您应该将每个单元格的分隔插入设置为零。您应该在cellForRowAtIndexPath 中添加这一行:

cell.separatorInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)

【讨论】:

这并没有改变任何东西。不过谢谢! 不应将 insets 设置为零,而应将其设置为“右”inset 为 table view 的宽度,即cell.separatorInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: tableView.bounds.width)【参考方案3】:

我建议给单元格一个随机的背景颜色而不是白色,这样您就可以确保单元格有填充并且它不是图像的一部分。如果它不起作用,您可以尝试使用表格和单元格引用将插图设置为零。查看这个答案以获得更多解释。

Remove SeparatorInset on ios 8 UITableView for XCode 6 iPhone Simulator

【讨论】:

它不是图像的一部分。链接中的代码,你能用 Swift 给我吗?谢谢! 让我试一下代码,我稍后会发布 swift 代码 谢谢!非常感谢!

以上是关于如何删除 UITableView 中的单元格分隔符?的主要内容,如果未能解决你的问题,请参考以下文章

iOS swift 删除 UITableView 单元格分隔空间

如何在 UITableView 中的单元格之间添加分隔符单元格/uiview?

UITableView insertRowsAtIndexPaths 删除单元格分隔符

在 iPad 上:UITableView 在标题和单元格之间的分隔符

UITableView 中的分隔单元格

如何删除(UITableView)分组文本字段周围的边框