- (void)addGestureWithView:(UIView *)view{
UIPanGestureRecognizer *recognizer = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(handlePan:)];
[self.view addGestureRecognizer:recognizer];
}
/** 平移手势响应事件 */
- (void)handlePan:(UIPanGestureRecognizer *)swipe {
if (swipe.state == UIGestureRecognizerStateChanged) {
[self commitTranslation:[swipe translationInView:self.view]];
}
}
/** 判断手势方向 */
- (void)commitTranslation:(CGPoint)translation {
CGFloat absX = fabs(translation.x);
CGFloat absY = fabs(translation.y);
// 设置滑动有效距离
if (MAX(absX, absY) < 10)
return;
if (absX > absY ) {
if (translation.x<0) {//向左滑动
}else{//向右滑动
}
} else if (absY > absX) {
if (translation.y<0) {//向上滑动
}else{ //向下滑动
}
}
}
UIPanGestureRecognizer 判断手势滑动方向
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 最近在写百度地图的时候发现地图和scrollView和tableView的滑动手势会冲突,这里以百度地图作为示例写...
- 一、关于隐藏导航栏的几个属性、一下为默认值 1、hidesBarsWhenKeyboardAppears self...
- 如果一次有效滑动,只执行一次 可以把判断写在scrollViewDidEndDragging代理里。