下拉tableView上面的图片放大
2016-04-21 10:16
447 查看
https://github.com/dbsGen/SlimeRefresh
1、引入头文件#import "SRRefreshView.h"
2、添加代理<UIScrollViewDelegate,SRRefreshDelegate>
3、实例化SRRefreshView
[objc] view plain
copy
SRRefreshView *_slimeRefreshView=[[SRRefreshView alloc]init];
_slimeRefreshView.delegate=self;
_slimeRefreshView.upInset=44;
_slimeRefreshView.slimeMissWhenGoingBack=YES;
_slimeRefreshView.slime.bodyColor=[UIColor blackColor];
_slimeRefreshView.slime.skinColor=[UIColor whiteColor];
_slimeRefreshView.slime.lineWith=1;
_slimeRefreshView.slime.shadowBlur=4;
_slimeRefreshView.slime.shadowColor=[UIColor blackColor];
[_tableView addSubview:_slimeRefreshView];
4、写代理
[objc] view plain
copy
#pragma mark-UIScrollViewDelegate
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
CGFloat yOffset = scrollView.contentOffset.y;
if (yOffset < 0) {
CGFloat ImageWidth = APP_WIDTH;
CGFloat factor = ((ABS(yOffset)+205)*ImageWidth)/205;
CGRect f = CGRectMake(-(factor-ImageWidth)/2, 0, factor, 205+ABS(yOffset));
_bgImgView.frame = f;
NSLog(@"下拉contentOffset.y小于0");
} else {
CGRect f = _bgImgView.frame;
f.origin.y = -yOffset;
_bgImgView.frame = f;
NSLog(@"上拉contentOffset.y大于0");
}
}
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
[_slimeRefreshView scrollViewDidEndDraging];
}
#pragma mark - slimeRefresh delegate
- (void)slimeRefreshStartRefresh:(SRRefreshView *)refreshView
{
// [self requestBasePersonalInfo:YES];
}
注意事项:
[objc] view plain
copy
UIImageView *_bgImgView=[LGImageView CreateLGImageView:CGRectMake(0,0,APP_WIDTH,205)
imageName:@"myBgImg"
interactionEnabled:YES];
[self.view addSubview:_bgImgView];
[objc] view plain
copy
UIView *_headerView=[LGView CreateLGView:CGRectMake(0,0,APP_WIDTH,205+USER_HEADER_IMAGEVIEW_SIZE/2)
WithBgColor:[UIColor clearColor]
withCornerRadius:0
withBorderWidth:0
withBorderColor:nil];
_tableView.tableHeaderView=_headerView;
{
UIView *tempView = [[UIView alloc] initWithFrame:CGRectMake(0, 205, APP_WIDTH, 40)];
tempView.backgroundColor = [UIColor whiteColor];
[_headerView addSubview:tempView];
CGRect frame = _headerView.frame;
frame.size.height = CGRectGetMaxY(tempView.frame);
_headerView.frame = frame;
}
1、引入头文件#import "SRRefreshView.h"
2、添加代理<UIScrollViewDelegate,SRRefreshDelegate>
3、实例化SRRefreshView
[objc] view plain
copy
SRRefreshView *_slimeRefreshView=[[SRRefreshView alloc]init];
_slimeRefreshView.delegate=self;
_slimeRefreshView.upInset=44;
_slimeRefreshView.slimeMissWhenGoingBack=YES;
_slimeRefreshView.slime.bodyColor=[UIColor blackColor];
_slimeRefreshView.slime.skinColor=[UIColor whiteColor];
_slimeRefreshView.slime.lineWith=1;
_slimeRefreshView.slime.shadowBlur=4;
_slimeRefreshView.slime.shadowColor=[UIColor blackColor];
[_tableView addSubview:_slimeRefreshView];
4、写代理
[objc] view plain
copy
#pragma mark-UIScrollViewDelegate
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
CGFloat yOffset = scrollView.contentOffset.y;
if (yOffset < 0) {
CGFloat ImageWidth = APP_WIDTH;
CGFloat factor = ((ABS(yOffset)+205)*ImageWidth)/205;
CGRect f = CGRectMake(-(factor-ImageWidth)/2, 0, factor, 205+ABS(yOffset));
_bgImgView.frame = f;
NSLog(@"下拉contentOffset.y小于0");
} else {
CGRect f = _bgImgView.frame;
f.origin.y = -yOffset;
_bgImgView.frame = f;
NSLog(@"上拉contentOffset.y大于0");
}
}
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
[_slimeRefreshView scrollViewDidEndDraging];
}
#pragma mark - slimeRefresh delegate
- (void)slimeRefreshStartRefresh:(SRRefreshView *)refreshView
{
// [self requestBasePersonalInfo:YES];
}
注意事项:
[objc] view plain
copy
UIImageView *_bgImgView=[LGImageView CreateLGImageView:CGRectMake(0,0,APP_WIDTH,205)
imageName:@"myBgImg"
interactionEnabled:YES];
[self.view addSubview:_bgImgView];
[objc] view plain
copy
UIView *_headerView=[LGView CreateLGView:CGRectMake(0,0,APP_WIDTH,205+USER_HEADER_IMAGEVIEW_SIZE/2)
WithBgColor:[UIColor clearColor]
withCornerRadius:0
withBorderWidth:0
withBorderColor:nil];
_tableView.tableHeaderView=_headerView;
{
UIView *tempView = [[UIView alloc] initWithFrame:CGRectMake(0, 205, APP_WIDTH, 40)];
tempView.backgroundColor = [UIColor whiteColor];
[_headerView addSubview:tempView];
CGRect frame = _headerView.frame;
frame.size.height = CGRectGetMaxY(tempView.frame);
_headerView.frame = frame;
}
相关文章推荐
- python psutil 进行系统管理 no.2
- Skype for Business支持离线消息啦
- JavaScript预解析及相关技巧分析
- javaScript使用new关键字时发生了什么?
- pthread_cond_wait()函数说明
- 课程练习二-1013-A strange lift
- 再说delegate
- xgboost原理及简单应用
- win10 sql server 2014 服务中需要设置失败后自动重启
- 正则表达式去除html标签
- JDK API 下载
- 石头剪刀布 手势识别
- Git Error
- 随时随地退出应用
- 【Leetcode】:319. Bulb Switcher 问题 in JAVA
- ntfs附加的功能有哪些
- Node.js开发入门——MongoDB与Mongoose
- 108. Convert Sorted Array to Binary Search Tree 109. Convert Sorted List to Binary Search Tree -- 将有序数组或有序链表转成平衡二叉排序树
- function a(){} 和 var a = function(){}的区别
- 嵌入式博客链接