美文网首页UI布局
在ScrollView下滑和上滑时显示不同的背景

在ScrollView下滑和上滑时显示不同的背景

作者: sz流氓江 | 来源:发表于2016-09-02 18:14 被阅读194次

我们在使用UIScrollView的时候经常会因为子视图的背景色需要显示在上下滑动时父视图不同的背景。例如淘宝中“我的淘宝”页面,上下拉的时候顶部是橙色,底部是灰色。在此要感谢MJRefresh的作者,是看了MJRefresh才有的灵感。

在scrollViewDidScroll的代理方法中添加如下代码:

func scrollViewDidScroll(scrollView: UIScrollView) {

    if scrollView.contentOffset.y < -scrollView.contentInset.top {

        if scrollViewTopBackView.superview == nil {

            scrollView.addSubview(scrollViewTopBackView)

            scrollViewTopBackView.backgroundColor = UIColor.redColor()

        }

        let scrollViewTopBackViewHeight = -scrollView.contentOffset.y - scrollView.contentInset.top

        scrollViewTopBackView.frame = CGRectMake(0, -scrollViewTopBackViewHeight, HMUITool.ScreenWidth, scrollViewTopBackViewHeight)

    }

}

其中scrollViewTopBackView可以使用直接定义成一个成员变量:

  let scrollViewTopBackView = UIView()

相关文章

网友评论

    本文标题:在ScrollView下滑和上滑时显示不同的背景

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