监测ScrollView和TableView是处在开始拖动,上移,下移,减速或者停止等状态

1、

//scrollView滚动时,就调用该方法。任何offset值改变都调用该方法。即滚动过程中,调用多次

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

NSLog(@"scrollViewDidScroll");

CGPointpoint=scrollView.contentOffset;

NSLog(@"%f,%f",point.x,point.y);

// 从中可以读取contentOffset属性以确定其滚动到的位置。

// 注意:当ContentSize属性小于Frame时,将不会出发滚动

}

2、

// 当开始滚动视图时,执行该方法。一次有效滑动(开始滑动,滑动一小段距离,只要手指不松开,只算一次滑动,只执行一次)

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

NSLog(@"scrollViewWillBeginDragging");

}

3、

// 滑动scrollView,并且手指将要离开时执行。一次有效滑动,只执行一次。

// 当pagingEnabled属性为YES时,不调用该方法

- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset{

NSLog(@"scrollViewWillEndDragging");

}

4、

// 滑动视图,当手指离开屏幕那一霎那,调用该方法。一次有效滑动,只执行一次。

// decelerate,指当我们手指离开那一瞬后,视图是否还将继续向前滚动一段距离,经过测试,decelerate=YES

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{

NSLog(@"scrollViewDidEndDragging");

if (decelerate) {

NSLog(@"decelerate");

}else{

NSLog(@"no decelerate");

}

CGPointpoint=scrollView.contentOffset;

NSLog(@"%f,%f",point.x,point.y);

}

5、

// 滑动减速时调用该方法。

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

NSLog(@"scrollViewWillBeginDecelerating");

// 该方法在scrollViewDidEndDragging方法之后。

}

6、

// 滚动视图减速完成,滚动停止时,调用该方法。一次有效滑动,只执行一次。

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

NSLog(@"scrollViewDidEndDecelerating");

[_scrollView setContentOffset:CGPointMake(0, 500) animated:YES];

}

7、

// 当滚动视图动画完成后,调用该方法,如果没有动画,那么该方法将不被调用

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

NSLog(@"scrollViewDidEndScrollingAnimation");

//有效的动画方法为:

//- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated 方法

//- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated 方法

}

8、

// 返回将要缩放的UIView对象。要执行多次

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{

NSLog(@"viewForZoomingInScrollView");

return  self.imgView;

}

9、

//当将要开始缩放时,执行该方法。一次有效缩放,就只执行一次。

- (void)scrollViewWillBeginZooming:(UIScrollView *)scrollView withView:(UIView *)view{

NSLog(@"scrollViewWillBeginZooming");

}

10、

//当缩放结束后,并且缩放大小回到minimumZoomScale与maximumZoomScale之间后(我们也许会超出缩放范围),调用该方法。

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{

NSLog(@"scrollViewDidEndZooming");

}

11、

// 指示当用户点击状态栏后,滚动视图是否能够滚动到顶部。需要设置滚动视图的属性:self.scrollView.scrollsToTop=YES或者self.tableView.scrollsToTop=YES;

- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView{

return YES;

}

12、

// 当滚动视图滚动到最顶端后,执行该方法

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

NSLog(@"scrollViewDidScrollToTop");

}

13、综上所述,实现一个简单的判断控件是在向上还是向下滑动的检测实现方式

int lastPosition;//记录上一次位置

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

intcurrentPostion=scrollView.contentOffset.y;

if (currentPostion - lastPosition>25) {

lastPosition=currentPostion;

NSLog(@"ScrollUp now");

}

else if (lastPosition - currentPostion>25)

{

lastPosition=currentPostion;

NSLog(@"ScrollDown now");

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,911评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,014评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,129评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,283评论 1 264
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,159评论 4 357
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,161评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,565评论 3 382
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,251评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,531评论 1 292
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,619评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,383评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,255评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,624评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,916评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,199评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,553评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,756评论 2 335

推荐阅读更多精彩内容

  • 掌握 UIScrollView的常见属性 UIScrollView的常用代理方法 UIScrollView的缩放 ...
    JonesCxy阅读 2,699评论 1 12
  • 方法&&属性:// 监控目前滚动的位置(默认CGPointZero) CGPoint ...
    李潇南阅读 534评论 0 1
  • 深入故土,以一种崇敬的心情 余音未灭的笙声渐去渐远 一些美丽的花朵 把整个故乡温柔的环抱 我注定今生走不出某种氛围...
    亮剑秦巴阅读 284评论 0 0
  • 分别的时候总会说xx以后再见,但后发现好多的人,说好了再见或许就再也不见了。 记忆最浓的是2011年的那年夏...
    当小小夏阅读 162评论 0 0