iOS - UITableView中 Header上小技巧:

在此记,怕遗忘。

项目出了个小问题, 在这个header上写了个视图, 然后不写    _tableView.tableHeaderView = view;   这句视图会随着屏幕移动。写了之后就固定不动了。 是视图层次问题。 虽然问题已经修改完毕,但是却突然想到以前别人app上灵活的视图设计方式.. 记一下..  以后用得上.



- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

{

    UIView *view = [[UIView alloc] init];

    

    UIImage *avart = [UIImage imageNamed:@"profileAvart.png"];

    if (!avartView)

        avartView = [[UIImageView alloc] initWithImage:avart];

    avartView.userInteractionEnabled = YES;

    [avartView setFrame:CGRectMake((tableView.frame.size.width-avart.size.width)/2, 10.0, avart.size.width, avart.size.height)];

    if (_friendPfofile)

    {

        //avartURL = [NSString stringWithString:_userProfile.avatar];

        NSString *avatarPath = [[FileManager getClassInstance] getAvatarMessageFolder:loginUserJid withImageUrl:_friendPfofile.avatar];

        NSData *imageData = [NSData dataWithContentsOfFile:avatarPath];

        if(imageData)

        {

            UIImage *image = [UIImage imageWithData:imageData];

            image =  [image roundedCornerImage:10 borderSize:3];

            avartView.image = image;

        }

        else

        {

            imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:_friendPfofile.avatar]];

            if (imageData)

                avartView.image = [UIImage imageWithData:imageData];//[UIImage imageNamed:@"photoBg.png"];

            else

                avartView.image = [UIImage imageNamed:@"photoBg.png"];

        }

    }

    else

        avartView.image = [UIImage imageNamed:@"photoBg.png"];

    

    _tableView.tableHeaderView = view;   //头像固定在tableView.

    [view addSubview:avartView];

    

    return view;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值