判断手指(手势)离开屏幕 iOS、轮播图

UIScrollView轮播图,当手指放上去的时候停止播放,手指离开时开始播放。
我的实现思路是在scrollView上加一个长按手势UILongPressGestureRecognizer。

//添加长按手势
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longUiscrollView:)];
        longPress.delegate = self;
        [_scrollV addGestureRecognizer:longPress];

//手势方法实现
- (void)longUiscrollView:(UITapGestureRecognizer *)tap{
    [self.timer invalidate];//循环终止
    self.timer = nil;
    //(手势完成时)手指离开时
    if (tap.state == UIGestureRecognizerStateEnded) {
        self.timer = [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(nextPage) userInfo:nil repeats:YES];
    }
}

轮播图整个需求实现

#pragma mark - UIScrollViewDelegate

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
    NSInteger index = (self.scrollV.contentOffset.x ) / MAINSCREEN_WIDTH;
//这儿数值根据自己的需求设定
    if (index < 1) {
        self.scrollV.contentOffset = CGPointMake(2 * MAINSCREEN_WIDTH, 0);
    }else if(index > 2){
        self.scrollV.contentOffset = CGPointMake( MAINSCREEN_WIDTH, 0);
    }
}
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{
    [self scrollViewDidEndDecelerating:self.scrollV];
}
//开始手动滑动时停止自动播放
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{
    [self.timer invalidate];//循环终止
    self.timer = nil;
}
//结束手动滑动是开始自动播放
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
    self.timer = [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(nextPage) userInfo:nil repeats:YES];
}
- (void)nextPage{
    [self.scrollV setContentOffset:CGPointMake(self.scrollV.contentOffset.x + MAINSCREEN_WIDTH,0 )animated:YES];
}
- (void)longUiscrollView:(UITapGestureRecognizer *)tap{
    [self.timer invalidate];//循环终止
    self.timer = nil;
    //(手势完成时)手指离开时
    if (tap.state == UIGestureRecognizerStateEnded) {
        self.timer = [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(nextPage) userInfo:nil repeats:YES];
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,294评论 4 61
  • 20170912 周二 穷人?富人? 昨天晚上上课时,教室里有些闷热,开了空调。不一...
    每天都微笑阅读 198评论 0 2
  • 欢迎猛击个人博客悟の迹【http://chihweihsu.com】更多精彩等着你 需求 给你一个条件,从已给字典...
    Chihwei_Hsu阅读 552评论 0 0
  • 其中感受最深的是,极简追求极致;大舍大得,小舍小得,不舍不得。 以前设定目标的时候,总是列了一个清单...
    HenryLuo的世界阅读 727评论 0 0
  • 假如幸福不在路的转角,那幸福一定在路的尽头 你可以不忘记她(他)但一定要放下ta 我们会用时间来让ta后悔,正如...
    一无所获阅读 178评论 0 0