Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Using a UITableViewController
- class SecHeadTVC: UITableViewController {
- override func viewDidLoad() {
- super.viewDidLoad()
- self.title = "Section Header TableViewController"
- tableView.register(UITableViewCell.self, forCellReuseIdentifier: "c")
- if #available(iOS 15.0, *) {
- tableView.sectionHeaderTopPadding = 0.0
- }
- }
- override func numberOfSections(in tableView: UITableView) -> Int {
- return 5
- }
- override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
- return section + 1
- }
- override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
- let c = tableView.dequeueReusableCell(withIdentifier: "c", for: indexPath)
- c.textLabel?.text = "\(indexPath)"
- c.textLabel?.backgroundColor = .cyan
- c.contentView.backgroundColor = .yellow
- return c
- }
- override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
- let v = UILabel()
- v.text = "Header for section: \(section)"
- v.backgroundColor = .green
- return v
- }
- }
- // Using a UITableView as a Subview of a UIViewController
- class SecHeadVC: UIViewController, UITableViewDataSource, UITableViewDelegate {
- override func viewDidLoad() {
- super.viewDidLoad()
- self.title = "Section Header TableView as Subview"
- view.backgroundColor = .systemYellow
- let tv = UITableView()
- tv.translatesAutoresizingMaskIntoConstraints = false
- view.addSubview(tv)
- let g = view.safeAreaLayoutGuide
- NSLayoutConstraint.activate([
- tv.topAnchor.constraint(equalTo: g.topAnchor, constant: 20.0),
- tv.leadingAnchor.constraint(equalTo: g.leadingAnchor, constant: 20.0),
- tv.trailingAnchor.constraint(equalTo: g.trailingAnchor, constant: -20.0),
- tv.bottomAnchor.constraint(equalTo: g.bottomAnchor, constant: -20.0),
- ])
- tv.register(UITableViewCell.self, forCellReuseIdentifier: "c")
- tv.dataSource = self
- tv.delegate = self
- if #available(iOS 15.0, *) {
- tv.sectionHeaderTopPadding = 0.0
- }
- }
- func numberOfSections(in tableView: UITableView) -> Int {
- return 5
- }
- func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
- return section + 1
- }
- func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
- let c = tableView.dequeueReusableCell(withIdentifier: "c", for: indexPath)
- c.textLabel?.text = "\(indexPath)"
- c.textLabel?.backgroundColor = .cyan
- c.contentView.backgroundColor = .yellow
- return c
- }
- func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
- let v = UILabel()
- v.text = "Header for section: \(section)"
- v.backgroundColor = .green
- return v
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement