1. Используйте ViewForHeaderInSection, как показано ниже:
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = self.getGradientBackgroundView()
// Add any title to the Header if needed
let label = UILabel()
label.frame = CGRect.init(x: 5, y: 5, width: headerView.frame.width-10, height: headerView.frame.height-10)
label.text = "My header"
headerView.addSubview(label)
return headerView
}
2. Установите Высота заголовка, используя heightForHeaderInSection:
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 50 //whatever height you needed.
}
3. Чтобы получить BG Header View
private func getGradientBackgroundView() -> UIView {
let gradientBackgroundView = UIView()
// Prepare Gradient Layer
let gradientLayer = CAGradientLayer()
gradientLayer.frame.size = CGSize(width: self.myTableView.frame.size.width, height: 50) // height same as in heightForHeaderInSection
gradientLayer.startPoint = CGPoint(x: 0.0, y: 0.5)
gradientLayer.endPoint = CGPoint(x: 1.0, y: 0.5)
gradientLayer.colors = [UIColor.blue.cgColor, UIColor.green.cgColor]
// Add layer to view
gradientBackgroundView.layer.addSublayer(gradientLayer)
return gradientBackgroundView
}
Надеюсь, это поможет !!