当我设置一个有4行的表格视图时,在填充行的下面仍然有额外的分隔行(或额外的空白单元格)。
如何移除这些单元格?
当我设置一个有4行的表格视图时,在填充行的下面仍然有额外的分隔行(或额外的空白单元格)。
如何移除这些单元格?
当前回答
当tableView有tableFooterView时UIKit不会创建空单元格。我们可以做个小技巧分配一个零高度的UIView对象作为tableView的页脚。
tableView.tableFooterView = UIView()
其他回答
我很幸运地实现了一个被接受的答案(iOS 9+, Swift 2.2)。我尝试着执行:
self.tableView.tableFooterView = UIView(frame: .zero)
然而,对我的tableView没有任何影响-我相信这可能与我使用UITableViewController的事实有关。
相反,我只需要重写viewForFooterInSection方法(我没有在其他地方设置tableFooterView):
override func tableView(tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
return UIView(frame: .zero)
}
这对于具有单个section的tableView来说效果很好(如果有多个section,则需要指定最后一个)。
我添加了这个小的tableview扩展,有助于整个
extension UITableView {
func removeExtraCells() {
tableFooterView = UIView(frame: .zero)
}
}
在Swift中移除UITableView中空行的额外分隔行
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.yourTableview.tableFooterView = UIView()
}
Uitableview额外的分隔线隐藏额外的分隔线隐藏在swift 3.0
self.tbltableView.tableFooterView = UIView(frame: .zero)
你可能会找到这个问题的很多答案。大多数都围绕着UITableView的tableFooterView属性进行操作这是隐藏空行的合适方法。为了方便起见,我创建了一个简单的扩展,它允许打开/关闭接口生成器中的空行。 你可以从这个要点文件里查到。我希望它能为你节省一点时间。
extension UITableView {
@IBInspectable
var isEmptyRowsHidden: Bool {
get {
return tableFooterView != nil
}
set {
if newValue {
tableFooterView = UIView(frame: .zero)
} else {
tableFooterView = nil
}
}
}
}
用法:
tableView.isEmptyRowsHidden = true