Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- self.myTableView.tableHeaderView?.frame = CGRectMake(0, 0, screenWidth, 290)
- extension UITableView {
- func setTableHeaderView(headerView: UIView?) {
- // set the headerView
- tableHeaderView = headerView
- // check if the passed view is nil
- guard let headerView = headerView else { return }
- // check if the tableHeaderView superview view is nil just to avoid
- // to use the force unwrapping later. In case it fail something really
- // wrong happened
- guard let tableHeaderViewSuperview = tableHeaderView?.superview else {
- assertionFailure("This should not be reached!")
- return
- }
- // force updated layout
- headerView.setNeedsLayout()
- headerView.layoutIfNeeded()
- // set tableHeaderView width
- tableHeaderViewSuperview.addConstraint(headerView.widthAnchor.constraint(equalTo: tableHeaderViewSuperview.widthAnchor, multiplier: 1.0))
- // set tableHeaderView height
- let height = headerView.systemLayoutSizeFitting(UILayoutFittingCompressedSize).height
- tableHeaderViewSuperview.addConstraint(headerView.heightAnchor.constraint(equalToConstant: height))
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement