iOS tableView下拉,轮播图跟随放大

这个效果在很多app中都有用到,比如微信朋友圈,知乎日报首页

我的项目里也遇到了这样的需求.特意记录下来,没啥技术含量 都是第三方的东西

其实核心就几行代码

原理是让轮播器和tableView的布局都顶在父视图的顶部 轮播器盖在tableView的上面

然后设置tableView的偏移量为230 让他提前偏移出轮播器高度的值  不至于让轮播器挡住tableView的内容

然后监听tableView的滚动

使用这个方法 根据tableView滑动的偏移量计算出轮播器的高度 然后更新轮播器的高度布局

下面的navView是把系统的navigationController隐藏了  自己做了个64高度的uiview作为navigationController  因为我的需求里 根据滑动偏移量是要改变navigationController的颜色  如果用系统的会影响到push到其他页面的navigationController,我嫌麻烦,所以干脆隐藏自己做个假的

NAVBAR_CHANGE_POINT这个宏是用来定义tableView偏移量到多少的时候navigationController开始调整它的透明度

布局的时候不要忘了把tableView和轮播器约束都设置为参照self.view顶部为0

自动布局用的Masnory,轮播器用的SDCycleScrollView

demo地址:http://git.oschina.net/jiuyue/tableViewPullDemo

Ps:如果想要实现图片下拉露出更多的效果  请让你的美工给你提供640x640的图片 否则只能放大

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,192评论 4 61
  • 小时候,幸福是一件很简单的事情;长大后,简单是一件很幸福的事; 生活就这么平淡无奇的过着,时间大约过去了很久,...
    软毛刺猬阅读 305评论 2 1
  • 前言:只有把大的目标化为一个个小目标,一切才能成为现实的可能。亲爱的,一起来分解我们的新年计划,让梦想照见现实,在...
    萌妈育儿记阅读 716评论 13 7
  • 翻开刚刚购买的新书,弗兰克尔的《活出生命的意义》,带着绝对的敬畏之心,试着走进作者的内心,试着感受一次他的感受,试...
    俏村姑阅读 575评论 6 12
  • 最晚不到十点就睡了 这么多年第一次 睡好饱
    莫名_3399阅读 238评论 0 0