iOS动画小知识iOS 开发

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

2016-05-18  本文已影响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的图片 否则只能放大

上一篇下一篇

猜你喜欢

热点阅读