tableView 头视图下拉放大 重写

#import "TableViewController.h"

@interface TableViewController ()
@property (nonatomic, retain) UIImageView *headerImageView;
@end

@implementation TableViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    [self layoutHeaderImageView];
}

- (void)layoutHeaderImageView {
    UIView *headerView = [[UIView alloc] initWithFrame:(CGRectMake(0, 0, self.view.frame.size.width, 200))];
    self.headerImageView = [[UIImageView alloc] initWithFrame:(CGRectMake(0, 0, self.view.frame.size.width, 200))];
    self.headerImageView.image  = [UIImage imageNamed:@"pic5093_sc115.com.jpg"]; // 自己选择的图片
    [headerView addSubview:self.headerImageView];
    self.tableView.tableHeaderView = headerView;
    
}

// 下拉后图片拉伸的效果方法下载这个里面
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    CGFloat width = self.view.frame.size.width; // 图片宽度
    CGFloat yOffset = scrollView.contentOffset.y;  // 偏移的y值
    if (yOffset < 0) {
        CGFloat totalOffset = 200 + ABS(yOffset);
        CGFloat f = totalOffset / 200;
        self.headerImageView.frame =  CGRectMake(- (width * f - width) / 2, yOffset, width * f, totalOffset); //拉伸后的图片的frame应该是同比例缩放。
    }
}

这个方法是有效的,我自己在刚才又重新写了一遍

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

推荐阅读更多精彩内容

  • 今天说的是这俩小妞的故事。 受樊登书店晓晴的邀请,下午三点,带仨娃去参加【樊登书店亲子创意...
    爱华王阅读 516评论 2 4
  • 吃大便啦你白目你真的超幼稚的要怎样啊你你真的超级机车诶就这样了 超无聊的
    池吉阅读 546评论 2 2
  • 灵魂噴薄,曼影踯躅 关于我们,有太多回忆 岁月斑驳,时光荏苒 曾几何时,我们共谱青春文章 一场高考 胜似繁花,却终...
    Zenia冷姑娘阅读 366评论 0 0
  • 每当谈到写作,我第一意识就是搜刮腹中的素材,或者想构思个严谨的逻辑结构。半天没下笔,最终得出和结论就是,我不会写作...
    从卖鱼开始阅读 209评论 0 1
  • 很久以前看过一部李少红的电影《血色清晨》,闹腾腾地记下了一个大家都晓得却没有人站出来制止的杀人故事。后来才知道,...
    蓝山闲读阅读 356评论 0 1