美文网首页iOS动画小知识iOS 开发
iOS tableView下拉,轮播图跟随放大

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

作者: 九月哈哈哈大魔王 | 来源:发表于2016-05-18 17:23 被阅读1823次

这个效果在很多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的图片 否则只能放大

相关文章

网友评论

  • WLAnswer:你这个是变高,不是放大吧!
  • wjiuxing:下拉是放大了,但是松手之后跳动好多次。。。
    WLAnswer:@wjiuxing 请教,怎么弄得
    wjiuxing:@WLAnswer 解决了,但不是很好
    WLAnswer:兄弟解决了嘛,我也是这个跳动问题
  • Casablanca1Q84S:你好,在吗???
    Casablanca1Q84S:@九月哈哈哈大魔王 可以了,我做好了,不用更改约束。谢谢
    九月哈哈哈大魔王:@九月哈哈哈大魔王 我更新了文章上传了个demo 你pull下来看下
    九月哈哈哈大魔王:太久没上 不好意思 你的约束设好了吗 我的方法是轮播图盖在tableview上面 然后监听tableview滚动 你可以在scrollViewDidScroll里面打印一下轮播图的高度看下
  • Casablanca1Q84S:你好,我的轮播图是放在一个xib 上面,然后xib 放在sb 上面,然后下拉的时候,没办法放大,跪求帮忙
  • Casablanca1Q84S:你好,我也在做轮播图,下拉放大功能。可以加我qq聊吗??704379869 或者您可以发一下demo 给我的邮箱吗
  • 3898f3a07b42:你好 最近 做 同样的功能,能给个demo 吗,感激不尽,1621940097@qq.com
  • 陨之希留leo:这样上拉tableView的时候,scrollView并不会随着一起向上滚动吧,会遮住tableView
    Casablanca1Q84S:你搞定了吗?我也在做这个
    Casablanca1Q84S:应该是,轮播图并不会推上去
  • 39af7ce2a2d1:您好,最近也要实现这个功能,能麻烦您发份demo么?邮箱2197727296@qq.com :smile:
  • Comedy_G:用一般的kvo可以监听吗?
    九月哈哈哈大魔王:@Comedy_G 没往那个方向想过,你可以试试

本文标题:iOS tableView下拉,轮播图跟随放大

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