美文网首页
Stretchy Headers

Stretchy Headers

作者: V_coa | 来源:发表于2015-10-27 09:44 被阅读50次

Design Teardowns笔记:

Paste_Image.png

最终效果是这样。下拉headerView被拉伸。

sh-preview.gif

这里给出比较重要的部分:

var headerView: UIView!
let HeaderViewHeight = CGFloat(300)
override func viewDidLoad() {
    super.viewDidLoad()
    headerView = tableView.tableHeaderView
    tableView.tableHeaderView = nil
    tableView.addSubview(headerView)
    tableView.contentInset = UIEdgeInsetsMake(HeaderViewHeight, 0, 0, 0)
    updateHeaderView()
}

func updateHeaderView() {
    var frame = CGRectMake(0, -HeaderViewHeight, tableView.frame.width, HeaderViewHeight)
    let offsetY = tableView.contentOffset.y
    if offsetY < -HeaderViewHeight {
        frame.origin.y = offsetY
        frame.size.height = -offsetY
    }
    
    headerView.frame = frame
}

override func scrollViewDidScroll(scrollView: UIScrollView) {
    updateHeaderView()
}·

相关文章

网友评论

      本文标题:Stretchy Headers

      本文链接:https://www.haomeiwen.com/subject/qdyxhttx.html