1.實現UIScrollViewDelegate
開始滑動:
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView
滑動過程:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
滑動結束:
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
注意:無倫用戶如何滑動scrollView,只要有滑動,就會調scrollViewWillBeginDecelerating,只有scrollView當加速度停止之后,才會調用scrollViewDidEndDecelerating
2.有了以上條件,就為限制加載提供了實現方式
首先,定義一個有計數功能的變量,如int yesToLoad,初始化為0
然后,在scrollViewWillBeginDecelerating函數中讓yesToLoad+=1,在scrollViewDidScroll中判斷yesToLoad是否等於1,如果不等,則表明用戶快速滑動了scrollView
最后,在scrollViewDidScroll將yesToLoad置為0,以便下一次測試用戶是否暴力而這個判斷也可以用在scrollViewDidScroll,如果yesToLoad不等於1,則執行你需要的函數
3.在實際應用過程中,就以上兩個條件,會存在一個小小的bug,比如用戶連續的來回滑動,或都小小的滑動加點擊,這樣屏幕會閃,於是再加上一個判斷條件
moveLeng = 0;(初始化)
在- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView,最后讓moveLeng等於滑動偏移量
moveLeng = scrollView.contentOffset.x;
在2判定的加上與,如果scrollView.contentOffset.x-moveLeng小於或者大於某一個值,則執行某個操作