UITableView:自定义分隔符

时间:2016-08-26 13:33:30

标签: swift uitableview

我的问题很简单,如何在UITableView中实现这样的分隔符。

enter image description here

我以前尝试通过此代码将包含虚线的CAShapeLayer添加到Cell.layer

let screenWidth = UIScreen.mainScreen().bounds.width
let path = UIBezierPath(); path.lineWidth = 0.2
path.moveToPoint(CGPointMake(10, cell.height))
path.addLineToPoint(CGPointMake(screenWidth - 20, cell.height))
let shapeLayer:CAShapeLayer = CAShapeLayer()
shapeLayer.strokeColor = UIColor.blackColor().colorWithAlphaComponent(0.3).CGColor
shapeLayer.fillColor = nil
shapeLayer.lineDashPattern = [1,3]
shapeLayer.path = path.CGPath
cell.layer.addSublayer(shapeLayer)

但它不适用于自我调整表格视图单元格

  

tableView.rowHeight = UITableViewAutomaticDimension

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

您可以使用带有虚线的image来实现此目的。试试这个:

self.tableView.separatorColor = UIColor(patternImage: UIImage(named: "YourDottedImage")!)

答案 1 :(得分:0)

您可以尝试向上移动

path.moveToPoint(CGPointMake(10, cell.height-1))
path.addLineToPoint(CGPointMake(screenWidth - 20, cell.height-1))