Один из способов справиться с такой ситуацией - полностью удалить разделитель из табличного представления и добавить свой собственный в ячейку, когда вы этого хотите. Я использую что-то вроде этого
func returnSeparator() -> UIView{
let screenFrame = UIScreen.main.bounds
let viewFrame = CGRect(x: 18, y: 140, width: screenFrame.width - 36, height: 0.5)
let viewR = UIView(frame: viewFrame)
viewR.backgroundColor = UIColor(white: 1, alpha: 0.2)
return viewR
}
А потом в cellForRowAt:
cell.addSubview(returnSeparator())
Таким образом, вы можете контролировать, какие строки будут иметь разделитель, а какие нет. Вы даже можете изменить внешний вид разделителя таким образом.