首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有一种内置的方式将手势识别器(特别是平移)添加到视图的右边缘或左边缘?

有没有一种内置的方式将手势识别器(特别是平移)添加到视图的右边缘或左边缘?
EN

Stack Overflow用户
提问于 2013-12-19 04:37:36
回答 4查看 1.1K关注 0票数 1

在整个iOS 7中,有许多情况下,用户可以从屏幕的左边缘或右边缘滑动手指来执行操作,例如弹出视图控制器或显示侧边栏。

有没有一种我完全忽略的内置方法(是的,我已经进行了广泛的搜索)?或者是检查平移开始位置的帧位置的唯一方法?

这是因为如果用户从边缘或中间拉出,我希望执行不同的操作。

EN

回答 4

Stack Overflow用户

发布于 2013-12-19 04:42:00

您有UIScreenEdgePanGestureRecognizer,它被添加到iOS7以检测从屏幕边缘平移。对于从中间平移,一个普通的平移手势识别器就足够了,你可以检查平移手势是否离中间足够近。

票数 3
EN

Stack Overflow用户

发布于 2013-12-19 05:10:04

使用UIScreenEdgePanGestureRecognizer,但首先检查它是否可用(因为它是iOS 7+):

代码语言:javascript
运行
复制
if (NSClassFromString(@"UIScreenEdgePanGestureRecognizer")) {
    UIScreenEdgePanGestureRecognizer *panRecognizer =
    [[UIScreenEdgePanGestureRecognizer alloc] initWithTarget:self
                                                      action:@selector(handleScreenEdgePanGesture:)];
    panRecognizer.edges = UIRectEdgeLeft;
}
票数 3
EN

Stack Overflow用户

发布于 2013-12-19 04:51:38

设置手势

代码语言:javascript
运行
复制
UIPanGestureRecognizer* panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePanning:)];
[self.view addGestureRecognizer:panGesture];

处理手势状态

代码语言:javascript
运行
复制
- (void)handlePanning:(UIPanGestureRecognizer *)gestureRecognizer
{
    switch ([gestureRecognizer state])
    {
        case UIGestureRecognizerStateBegan:

            [self startDragging:gestureRecognizer];
            break;

         //u won't need following cases
        case UIGestureRecognizerStateEnded:
        case UIGestureRecognizerStateCancelled:
        case UIGestureRecognizerStateFailed:

            [self stopDragging:gestureRecognizer];
            break;

        default:
            break;
    }
}

识别drag的起始点

代码语言:javascript
运行
复制
- (void)startDragging:(UIPanGestureRecognizer *)gestureRecognizer
{
    CGPoint pointInSrc = [gestureRecognizer locationInView:yourVIEW];
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20667900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档