微博个人中心效果

//微博个人中心

- (void)configTableView

{

//image 高度375;

    testTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, kScreenWith, kScreenHeight)];

    testTableView.delegate = self;

    testTableView.dataSource = self;

    [self.view addSubview:testTableView];

    

    tableViewHeader = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, testTableView.frame.size.width, 250)];

    tableViewHeader.image = [UIImage imageNamed:@"head2"];

    tableViewHeader.contentMode = UIViewContentModeScaleToFill;

    testTableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0);

    [testTableView addSubview:tableViewHeader];

    

    headerv = [[UIView alloc] initWithFrame:CGRectMake(0, 0, testTableView.frame.size.width, 250)];

    headerv.backgroundColor = [UIColor clearColor];

    la = [[UILabel alloc] initWithFrame:CGRectMake(0, headerv.frame.size.height/2.0 - 20, testTableView.frame.size.width, 40)];

    la.text = @"测试账号";

    la.textAlignment = NSTextAlignmentCenter;

    [headerv addSubview:la];

    testTableView.tableHeaderView = headerv;

}

 

#pragma mark - scale

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {

    

    CGFloat imagH = 375 - 250;

    

   

    CGFloat yOffset  = scrollView.contentOffset.y;

    NSLog(@"yoffset===%f",yOffset);

    if (yOffset < 0 ) {

    

        UIImageView *header = tableViewHeader;

        CGRect rect = header.frame;

        rect.origin.y = fabs(yOffset) > imagH ? -imagH:yOffset;

        rect.size.height = fabs(yOffset) > imagH?375:(250 - yOffset);

        rect.origin.x = 0;

        rect.size.width = scrollView.frame.size.width; //+ fabs(xOffset) * 2;

        header.frame = rect;

        

//        [headerv setFrame:CGRectMake(0, 0, testTableView.frame.size.width, 250 - yOffset*0)];

//        [la setFrame:CGRectMake(0, headerv.frame.size.height - 40, testTableView.frame.size.width, 40)];

        

    }

//    else if(yOffset < 0 && fabs(yOffset) >= 100){

//    

//        

//    }

    else {

    

        [tableViewHeader setFrame:CGRectMake(0, 0, testTableView.frame.size.width, 250)];

    }

 

    CGFloat alpha = (yOffset + 40) / 40;

    if(self.edgesForExtendedLayout == UIRectEdgeTop || self.edgesForExtendedLayout == UIRectEdgeAll){

        

        UIImage *colorImg = [self imageWithColor:[UIColor orangeColor]];

        UIImage *barBgImg = [self imageByApplyingAlpha:alpha image:colorImg];

        

 

        [self.navigationController.navigationBar setBackgroundImage:barBgImg forBarMetrics:UIBarMetricsDefault];

    }

    

    

   

}

原文地址:https://www.cnblogs.com/sgdkg/p/5045873.html