首页 > 移动平台 > 详细

iOS 使用TableView实现下拉放大

时间:2015-09-30 16:00:35      阅读:323      评论:0      收藏:0      [点我收藏+]

第一步: 布置需要放大的TopView:

技术分享

1. 创建TopView

UIImageView *topView = [[UIImageView alloc] init];

 

2. 设置图片

UIImage *image = [UIImage imageNamed:@"Big.jpg"];
topView.image = image;

 

3. 设置TopView的初始位置及内容模式

// 初始位置
topView.frame = CGRectMake(0, -TopViewH, ScreenW, TopViewH);
topView.contentMode = UIViewContentModeScaleAspectFill;

 

4. 设置内边距让TableView的contentView往下移动

self.tableView.contentInset = UIEdgeInsetsMake(TopViewH / 2, 0, 0, 0);

 

5. 将TopView插入TableView的最下面(contentView下面)

[self.tableView insertSubview:topView atIndex:0];
self.topView = topView;

 

 

第二步: 实现下拉放大:

技术分享

1. 通过代理方法:scrollViewDidScroll:实现下拉放大

- (void)scrollViewDidScroll:(UIScrollView *)scrollView

 

2. 获取下拉距离

CGFloat downDistance = -TopViewH / 2 - scrollView.contentOffset.y;

 

3. 根据下拉距离放大TopView

if (downDistance >= 0)
{
     self.topView.transform = CGAffineTransformMakeScale(1 + downDistance * 0.005, 1 + downDistance * 0.005);  // 0.005 -> 放大系数
}

 

 

Demo:https://github.com/BigPlane/DownMagnifyDemo

 

iOS 使用TableView实现下拉放大

原文:http://www.cnblogs.com/happyplane/p/4849072.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!