Вот что я пытаюсь заархивировать
- мой основной вид имеет красный цвет с градиентом.
- tableHeaderView должен иметь четкий цвет (потому что это вид с закругленными углами,поэтому в некоторых частях должно быть ясно, чтобы отображались закругленные углы).
- tableView (кроме заголовка) должен иметь белый цвет.Даже если в нем только одна ячейка, нижнее пространство под этой ячейкой должно быть белым.
Моя иерархия представлений проста: у меня есть tableView поверх основного представления
view.backgroundColor = .clear
tableView.backgroundColor = UIColor.clear
...
cell.backgroundColor = UIColor.clear
...
tableView.tableHeaderView = someView (with clear color)
Итак, после этих настроек у меня отображается таблица с чистым цветом фона, если у меня есть одна ячейка (я установил ее цвет фона на белый), пространство под этой ячейкой будет чистым.Но это должно быть белым.Как я могу получить это?
--- решено:
tableView.tableFooterView = UIView()
if let tableFooterView = tableView.tableFooterView {
let bigFooterView = UIView()
bigFooterView.backgroundColor = .white
tableFooterView.addSubview(bigFooterView)
bigFooterView.translatesAutoresizingMaskIntoConstraints = false
tableFooterView.addConstraint(NSLayoutConstraint(item: bigFooterView, attribute: .trailing, relatedBy: .equal, toItem: tableFooterView, attribute: .trailing, multiplier: 1, constant: 0))
tableFooterView.addConstraint(NSLayoutConstraint(item: bigFooterView, attribute: .leading, relatedBy: .equal, toItem: tableFooterView, attribute: .leading, multiplier: 1, constant: 0))
tableFooterView.addConstraint(NSLayoutConstraint(item: bigFooterView, attribute: .top, relatedBy: .equal, toItem: tableFooterView, attribute: .top, multiplier: 1, constant: 0))
tableFooterView.addConstraint(NSLayoutConstraint(item: bigFooterView, attribute: .height, relatedBy: .equal, toItem: nil, attribute: .notAnAttribute, multiplier: 1, constant: UIScreen.main.bounds.height*2))
}