Если вы не возражаете против того, чтобы каждая ячейка находилась в новом разделе, это возможно следующим образом:
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func numberOfSections(in tableView: UITableView) -> Int {
return 3
}
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
return 15
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 100 ;
}
Затем в вашем методе cellForRowAt
получите sectionIndex с indexPath.section. Затем вы можете добавить радиус угла и границу к самой ячейке, щелкнув ячейку и используя инспектор атрибутов.
Вариант 2 - не использовать новый раздел для каждой ячейки
Следующий код может быть вызван из метода awakeFromNib настраиваемой ячейки.
let maskLayer = CALayer()
maskLayer.cornerRadius = 10
maskLayer.backgroundColor = UIColor.clear.cgColor
maskLayer.borderColor = UIColor.red.cgColor
maskLayer.borderWidth = 5
maskLayer.frame = CGRect(x: self.bounds.origin.x, y: self.bounds.origin.y, width: self.bounds.width, height: self.bounds.height).insetBy(dx: horizontalPadding/2, dy: verticalPadding/2)
self.layer.insertSublayer(maskLayer, below: self.layer)
Ограничение этого ответа состоит в том, что вы не можете заставить цвет фона ячейки отличаться от цвета фона таблицы (ну, по крайней мере, я не мог). У него более гладкие закругленные углы, чем у ответа MuSoundiX .