如何禁用UIscrollView的内置手势

2025-04-24 06:35:49
推荐回答(1个)
回答1:

用scrollview的delegate就可以了。#pragmamark-UIScrollViewDelegate委托//scrollView滚动时,就调用该方法。任何offset值改变都调用该方法。即滚动过程中,调用多次-(void)scrollViewDidScroll:(UIScrollView*)scrollView{NSLog(@"scrollViewDidScroll");CGPointpoint=scrollView.contentOffset;NSLog(@"%f,%f",point.x,point.y);//从中可以读取contentOffset属性以确定其滚动到的位置。//注意:当ContentSize属性小于Frame时,将不会出发滚动}//当scrollView缩放时,调用该方法。在缩放过程中,回多次调用-(void)scrollViewDidZoom:(UIScrollView*)scrollView{NSLog(@"scrollViewDidScroll");floatvalue=scrollView.zoomScale;NSLog(@"%f",value);}//当开始滚动视图时,执行该方法。一次有效滑动(开始滑动,滑动一小段距离,只要手指不松开,只算一次滑动),只执行一次。-(void)scrollViewWillBeginDragging:(UIScrollView*)scrollView{NSLog(@"scrollViewWillBeginDragging");}//滑动scrollView,并且手指离开时执行。一次有效滑动,只执行一次。//当pagingEnabled属性为YES时,不调用,该方法-(void)scrollViewWillEndDragging:(UIScrollView*)scrollViewwithVelocity:(CGPoint)velocitytargetContentOffset:(inoutCGPoint*)targetContentOffset{NSLog(@"scrollViewWillEndDragging");}//滑动视图,当手指离开屏幕那一霎那,调用该方法。一次有效滑动,只执行一次。//decelerate,指代,当我们手指离开那一瞬后,视图是否还将继续向前滚动(一段距离),经过测试,decelerate=YES-(void)scrollViewDidEndDragging:(UIScrollView*)scrollViewwillDecelerate:(BOOL)decelerate{NSLog(@"scrollViewDidEndDragging");if(decelerate){NSLog(@"decelerate");}else{NSLog(@"nodecelerate");}CGPointpoint=scrollView.contentOffset;NSLog(@"%f,%f",point.x,point.y);}//滑动减速时调用该方法。