首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在iOS中检测平移手势的方向

在iOS中检测平移手势的方向
EN

Stack Overflow用户
提问于 2012-08-02 20:19:49
回答 7查看 39.4K关注 0票数 40

在我的应用程序中,有一个图像view.Im将平移手势添加到该图像视图中。

这工作得很好。

图像视图处于横向模式。

我想在用户平移到右方向时增加标签中的计数,而在用户平移到左方向时减少计数。

我用谷歌搜索了很多,但没有找到解决这个问题的办法。

谁能告诉我如何检测用户平移的方向(左/右)?

EN

Stack Overflow用户

发布于 2016-06-08 17:21:01

在Swift中我之前的答案

代码语言:javascript
运行
复制
public enum Direction: Int {
    case Up
    case Down
    case Left
    case Right

    public var isX: Bool { return self == .Left || self == .Right }
    public var isY: Bool { return !isX }
}

public extension UIPanGestureRecognizer {

    public var direction: Direction? {
        let velocity = velocityInView(view)
        let vertical = fabs(velocity.y) > fabs(velocity.x)
        switch (vertical, velocity.x, velocity.y) {
        case (true, _, let y) where y < 0: return .Up
        case (true, _, let y) where y > 0: return .Down
        case (false, let x, _) where x > 0: return .Right
        case (false, let x, _) where x < 0: return .Left
        default: return nil
        }
    }
}
票数 20
EN
查看全部 7 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11777281

复制
相关文章

相似问题

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