Skip to content
Example of how to use AutoLayout with table header view.
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
TableHeaderViewWithAutoLayout.xcodeproj Remove redundant code Jun 28, 2017
TableHeaderViewWithAutoLayout Update Jun 28, 2017


Example of how to use AutoLayout with table header view.

It comes with UITableView's extension that helps you do this easily.

There are two examples:

  1. using UITableView (with header view Xib)
  2. using UITableViewController (all in storyboard).

Requirements: Xcode 8, Swift 3, iOS 9+ (use anchors)

More detail here

alt gif

How to use

  1. In viewDidLoad()
// 1. Setup AutoLayout (do this instead of setting constraints via storyboard)
self.tableView.setTableHeaderView(headerView: self.tableView.tableHeaderView!)

// 2. Initial layout update
  1. (If you want to handle device rotation) In viewWillTransition(to size: with coordinator:)
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
    super.viewWillTransition(to: size, with: coordinator)

    // 3. Update layout every time device is rotated.
    DispatchQueue.main.async {
You can’t perform that action at this time.