美文网首页
iOS tableView下拉放大表头

iOS tableView下拉放大表头

作者: 唐人街的乞丐 | 来源:发表于2019-11-28 10:13 被阅读0次

效果图

效果图

参考代码

设置tableview表头

    self.originalFrame = CGRectMake(0, 0, self.view.bounds.size.width, headerViewHeight);
    
    UIView * headerView = [[UIView alloc]initWithFrame: self.originalFrame];
    headerView.backgroundColor = [UIColor redColor];
    self.tableview.tableHeaderView= headerView;
    //  需要在创建一个imageView 放图片,g如果直接用imageView 作为headerView,tablview 容易错位变形
    UIImageView * imageView = [[UIImageView alloc]initWithFrame: self.originalFrame];
    imageView.backgroundColor = [UIColor blueColor];
    imageView.image = [UIImage imageNamed:@"headerView"];
    self.imageView  = imageView;
    [self.view addSubview:imageView];

在scrollViewDidScroll:方法中处理滑动操作

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
    CGFloat yOffset = scrollView.contentOffset.y;
    if (yOffset > 0) {
        //  向上滑动
          CGRect frame = self.originalFrame ;
         frame.origin.y = frame.origin.y - yOffset;
         self.imageView.frame  = frame;
    }else{
        // 向下滑动,会放大
        CGRect frame =  self.originalFrame ;
        frame.size.height = frame.size.height - yOffset;
        frame.size.width = frame.size.height * (self.originalFrame.size.width / self.originalFrame.size.height);
        frame.origin.x = frame.origin.x - (frame.size.width - self.originalFrame.size.width) * 0.5;
        self.imageView.frame  = frame;
    }
}

Github代码地址

相关文章

网友评论

      本文标题:iOS tableView下拉放大表头

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