如何将底部边框添加到tableview部分标题

我正在使用下面的函数来确定我的应用程序中的tableview节标题:

override func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?{ var title: UILabel = UILabel() title.text = "something" // Add a bottomBorder var border = UIView(frame: CGRectMake(0,0,self.view.bounds.width,1)) border.backgroundColor = UIColor.redColor() title.addSubview(border) } 

以及下面的部分来确定tableview节标题的高度:

 override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat 

我怎样才能添加底部边框的部分?

你可以创buildUIView作为边框,然后添加它:

 var border = UIView(frame: CGRectMake(0,40,self.view.bounds.width,1)) border.backgroundColor = UIColor.redColor() headerView.addSubview(border) 

headerView是您实际创build的自定义视图

编辑

  var headerView = UIView(frame: CGRectMake(0,0,self.view.bounds.width,40)) var title = UILabel(frame: CGRectMake(0, 0, 200, 21)) title.text = "something" // Add a bottomBorder var border = UIView(frame: CGRectMake(0,39,self.view.bounds.width,1)) border.backgroundColor = UIColor.redColor() headerView.addSubview(border) headerView.addSubview(title) return headerView 

Swift 3

这对我有效。 在viewForHeaderInSection:

  let headerView = UIView() let borderTop = UIView(frame: CGRect(x:0, y:0, width: tableView.bounds.size.width, height: 1.0)) borderTop.backgroundColor = UIColor.self.init(red: 5/255, green: 16/255, blue: 28/255, alpha: 1.0) headerView.addSubview(borderTop) let borderBottom = UIView(frame: CGRect(x:0, y:40, width: tableView.bounds.size.width, height: 1.0)) borderBottom.backgroundColor = UIColor.self.init(red: 5/255, green: 16/255, blue: 28/255, alpha: 1.0) headerView.addSubview(borderBottom) 

您可以调整顶部和底部的位置取决于你的头高。 y = 0顶部,x = 40底部边框为我工作。 希望这有助于。 祝你好运。

如果你想自定义标题的其余部分:

  let headerLabel = UILabel(frame: CGRect(x: 15, y: 9, width: tableView.bounds.size.width, height: tableView.bounds.size.height)) headerLabel.font = UIFont(name: "Trebuchet MS", size: 19) headerLabel.textColor = UIColor.self.init(red: 254/255, green: 170/255, blue: 25/255, alpha: 1.0) headerLabel.text = self.tableView(self.tableView, titleForHeaderInSection: section) headerLabel.sizeToFit() headerView.addSubview(headerLabel)