浅谈个人主页头部下拉变大的思路
其实就是在ViewController上先放一个image,就是你想要下拉的时候放大的,然后再放置一个tableView ,并设置
.tableHeaderView=headView 背景为透明色,并且headView的高度比image的高度小点以免在下拉的时候 出现白色不衔接的状态,
如果想要在头部在添加一个签名,个人头像什么的 都可以放在headView上 并且不随着背景图片的变大变小改变,
最主要的就是在滑动单元格的时候 ,控制image的位置,使image看起来就是跟着tableview 一起滑动的, 即在
- (void)scrollViewDidScroll:(UIScrollView *)scrollView方法里
- (void)scrollViewDidScroll:(UIScrollView *)scrollView { //往上滑动offset增加,往下滑动,yoffset减小 CGFloat yoffset = scrollView.contentOffset.y; //处理背景图的放大效果和往上移动的效果 if (yoffset>0) {//往上滑动 _headImageView.frame = ({ CGRect frame = self.origialFrame; frame.origin.y = self.origialFrame.origin.y - yoffset; frame; }); }else {//往下滑动,放大处理 _headImageView.frame = ({ CGRect frame = self.origialFrame; frame.size.height = self.origialFrame.size.height - yoffset; frame.size.width = frame.size.height*1.5; frame.origin.x = _origialFrame.origin.x - (frame.size.width-_origialFrame.size.width)/2; frame; }); }
控制放大情况 以及位置。