任意角度滑动检测

2023-12-22

有什么方法可以检测 iPhone 中任意角度的滑动吗?UISwipeGestureRecognizer好像只有4个方向。
如果我像这样滑动:

\
 \
  \
   X

我希望它能给我大约 60 度的角度,而不是像UISwipeGestureRecognizer.
我怎样才能做到这一点?


您可以使用UIPanGestureRecognizer。当您检测到 Ended 状态时,您可以获得速度。速度分为 x 和 y 分量。您可以使用 x 和 y 分量来计算斜率 m。

m = Δy / Δx

由斜率 m 定义的线 ???? 相对于 x 轴的角度定义如下:

???? = arctan(m)

就像是:

- (void)didPan:(UIPanGestureRecognizer*)recognizer {
    switch (recognizer.state) {
        case UIGestureRecognizerStateBegan:
            ...
            break;

        case UIGestureRecognizerStateEnded:
            CGPoint velocity = [recognizer velocityInView:[recognizer.view superview]];
            // If needed: CGFloat slope = velocity.y / velocity.x;
            CGFloat angle = atan2f(velocity.y, velocity.x);
            ...
            break;
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

任意角度滑动检测 的相关文章

  • 获取对 iOS 应用程序中最顶层视图/窗口的引用

    我正在创建一个可重用的框架 用于在 iOS 应用程序中显示通知 我希望将通知视图添加到应用程序中其他所有内容的顶部 有点像 UIAlertView 当我初始化监听 NSNotification 事件并添加视图作为响应的管理器时 我需要获取对
  • 将子视图控制器的视图添加到父视图控制器的子视图

    我想添加一个表视图控制器作为容器视图控制器的子视图控制器 如下所示 根据苹果公司的查看控制器编程指南 http developer apple com library ios featuredarticles ViewControllerP
  • 如何防止 RealmSwift 列表中出现重复项?

    如何防止向列表中添加重复项RealmSwift 我有我的User作为领域对象 但真正的数据源是服务器 只是使用领域在本地缓存用户 当我从服务器获取当前用户数据时 我想确保存储在领域中的用户拥有来自服务器的所有播放列表 以及它们的曲目列表等
  • “同时创建 xib 文件”按钮已禁用

    我在创建时遇到这个问题UIView s子类 创建 例如 UIViewControllers or UITableViewCells没关系 为什么会出现这种情况 I create view using cmd N and Xcode Vers
  • 是什么导致了这个 iPhone 崩溃日志?

    我有点卡住了 需要解决这个问题 因为我的一个应用程序出现了随机崩溃 而这些崩溃并不总是能够重现 这是崩溃日志之一 Incident Identifier 59865612 9F00 44EA 9474 2BF607AD662E CrashR
  • iOS 10 的错误? NSDate 日本地区时间描述和 24 小时休息

    这似乎是 iOS 10 的一个错误 在 iOS 8 和 9 中都可以 NSDate date description 的小时描述是错误的 它附加了 24 小时描述和 12 小时描述 我没有使用 NSDateFormatter 只是默认设置
  • 这个错误是无效上下文0x0吗?

    我在ViewDidLoad中编写了以下代码 Implement viewDidLoad to do additional setup after loading the view typically from a nib void view
  • Swift - 选择值后隐藏 pickerView

    我发现了类似的问题 他们的答案很有帮助 但我坚持最后一件事 我试图在点击字段时显示 pickerView 然后选择数据时 我希望 pickerView 隐藏 我可以从 pickerView 获取数据来隐藏 但是 pickerView 后面仍
  • 如何从代码隐藏中设置 CarouselView 的项目?

    我有一个 CarouselView 它绑定到图像的 ItemsSource 但我想通过更改 CarouselView 的索引来更改当前显示的图像 我尝试使用 CarouselView Position 作为必须选择的元素的索引 但不幸的是这
  • PresentModalViewController 不执行任何操作

    我有一个 UIViewController parent 调用presentModalViewController与另一个 UIViewController child on viewDidLoad If parent没有 UINaviga
  • UISearchController 保留问题

    我正在尝试使用 UISearchController 但是我遇到了无法解决的保留问题 MainTableview 有两个部分 第1节 基于某些正则表达式过滤数据 第2节 All Data 我将 UISearchController 添加到我
  • 如何使用 Swift 获取 YouTube 频道的所有播放列表?

    我的问题不是关于从一般频道检索视频 我只想获取该频道创建的所有 播放列表 并检索每个播放列表的缩略图 标题和视频数量 这是一个 YouTube 频道示例 正如您所看到的 有很多已创建的播放列表 截至目前 我只能获取某个频道最新上传的视频 在
  • 线程 1:信号 SIGABRT - AppDelegate.h

    main m Journey Created by Julian Buscema on 2014 07 13 Copyright c 2014 Julian Buscema All rights reserved import
  • Objective C UIImagePNGRepresentation内存问题(使用ARC)

    我有一个基于 ARC 的应用程序 它从 Web 服务加载大约 2 000 个相当大 1 4MB 的 Base64 编码图像 它将 Base64 解码后的字符串转换为 png图像文件并将其保存到磁盘 这一切都是在一个循环中完成的 我不应该有任
  • 我可以知道 requireGestureRecognizerToFail 到底会做什么吗?

    谁能告诉我下面的代码行到底会做什么 我已经提到过Apples https developer apple com library ios documentation uikit reference UIGestureRecognizer C
  • xcode 6.1 (Swift) 中的 SIGABRT 运行时错误

    与最初的代码相比 唯一的更改是在ViewControl swift override func viewDidLoad newMessage hidden true super viewDidLoad Do any additional s
  • Swift 中通过不同类调用委托方法

    我正在获取 JSON 菜单 一旦 JSON 返回 我想运行 menuReady 来更新表的内容在 SomeTableViewController 类中 但下面的代码似乎不起作用 AIM Run 菜单就绪 JSON 返回后更新内容 PROBL
  • 退出导航控制器

    我试图离开初始视图控制器 并进入空白视图控制器 这很好 但是这会使空白视图控制器也成为导航控制器的一部分 这不是我想要的 我想脱离视图控制器 在视图控制器中 我尝试退出 它会自行弹出 当我尝试视图中的方法时 将出现目标视图控制器 self
  • 显示键盘时如何在 TextView 下方添加更多填充

    当我在 ScrollView 中有 TextField 并点击它时 键盘会按预期显示 但似乎 TextField 已向上移动到足以显示输入区域 但我希望移动到足够的位置 以便整体可见 否则它看起来像是被剪裁了的 我找不到改变这种行为的方法
  • 为什么这个 SKPhysicsJointPin 不能将这 2 个精灵保持在一起?

    我显然不太了解 SKPhysicsJoint 但是除了 Apple 文档之外 网上的信息还很少 下面的代码有什么问题 我认为应该保持头部和颈部永久连接 我的意图是它们就像两张带有大头针的纸 这样它们可以旋转一点 但不仅仅是完全分开 当我运行

随机推荐

  • 打印和格式化字符串文字有什么区别?

    当我们可以使用第 8 行和第 9 行代码时 使用代码有什么意义print比如10号线 my name Zed A Shaw my age 35 my height 74 my weight 180 my eyes Blue my teeth
  • 如果我将数组初始化为大小 0 会发生什么?

    假设我有一个类似的函数 void myFunc List
  • AJAX 响应时间

    如何计算 AJAX 响应时间 我在脚本中需要这个 因为我得到服务器时间戳 但如果请求花费超过 1 秒 我需要在时间戳上添加 1 秒 您需要获取开始时间 就在 AJAX 请求完成之前 然后获取脚本完成时的结束时间 然后您可以计算出差异 如果大
  • pySerial 2.6:在 readline() 中指定行尾

    我正在使用 pySerial 向 Eddie 发送命令 我需要在我的阅读行中指定回车符 但 pySerial 2 6 去掉了它 有解决方法吗 这里有艾迪命令集 https www parallax com sites default fil
  • Spring data jpa,外部化本机查询

    我正在使用 Spring data jpa 来执行本机查询 这是示例 Query value select name from customer nativeQuery true public List
  • 播放 iOS 时从 HLS 流(视频)中提取/录制音频

    我正在使用 AVPlayer 播放 HLS 流 当用户按下录制按钮时 我还需要录制这些流 我使用的方法是分别录制音频和视频 然后最后合并这些文件以制作最终视频 并且远程 mp4 文件成功 但现在对于 HLS m3u8 文件 我可以使用 AV
  • log4j 用于独立的 java 项目

    我正在考虑将 log4j 用于我的独立 java 项目 是否可以将它用于 java 项目 而不是网络应用程序 如果可能的话 我应该如何初始化属性文件以及应该在哪里初始化 我放置了属性文件 目录结构 任何帮助表示赞赏 是的 这是可能的 我们一
  • Bing API v1 文档

    有谁知道我可以在哪里找到 Bongs API 的最新文档 网址如下 https api datamarket azure com Bing Search v1 Web 甚至他们自己的网站在我读过的单词文档中也有错误的 URL 即https
  • 列包含列 2

    我有一个数据框 我想测试 C 在每行上 B 列中的数字是否在字符串 A 列中 df pd DataFrame A me 123 me 123 1234 me 12 123 and B 123 123 123 123 6 我想得到 A B C
  • JPA继承entitymanager.find产生ClassCastException

    我有一个这样的类层次结构 Entity Table name call distribution policies Inheritance strategy InheritanceType JOINED public class CallD
  • 如何在 SQL Server 中使用 Switch

    我想用CASE在我的存储过程中 我的代码中出现一些语法错误 select case Temp when 1 then selectoneCount selectoneCount 1 when 2 then selectoneCount se
  • 将单元格值转换为列标题,如果在 python 中匹配则用 1 填充

    我有一个数据框 df ID 0 1 2 3 4 1 10 20 5 1 2 2 3 4 NaN 10 1 我需要转置该列的单元格值0 1 2 3 4 到列标题 如果相应 ID 存在单元格值 则将其填充为 1 期望的输出 ID 1 2 3 4
  • 设置用于小程序启动的默认 JVM 参数

    我正在尝试远程调试 Java 小程序 但我似乎无法使 agentlib jdwp JVM 参数起作用 我尝试在 Java 控制面板中为所使用的特定 JRE 指定它 并且尝试通过用于启动小程序的 JNLP 文件来设置它 为小程序启动设置 JV
  • React-router v4 - 无法获取 *url*

    我开始使用react router v4 我有一个简单的
  • Socket.io 清理传入数据 (xss)

    我在expressjs 3中使用socket io 我想用express validator清理传入的消息 我有这个代码 var expressValidator require express validator sanitize req
  • 使用 strftime 将 python 日期时间转换为纪元

    我有一个 UTC 时间 我想要从纪元开始的秒数 我正在使用 strftime 将其转换为秒数 以2012年4月1日为例 gt gt gt datetime datetime 2012 04 01 0 0 strftime s 1333234
  • 使用分类数据创建线图而不连接线

    尝试创建一个图表 其中 x 和 y 都是因子 但我不希望在存在间隙时连接线条 我怎样才能实现这个目标 library ggplot2 df lt data frame x c a b c d e y c a a NA a a ggplot
  • 为什么此 C 代码片段中的 NULL 取消引用不会导致未定义的行为

    我遇到了一段代码 其中 NULL 被类型转换为结构指针类型 foo 0 并用该指针取消引用成员 foo 0 gt m 并使用该地址 foo 0 gt m 并将其类型转换为整数以获取结构中该成员的内存索引 unsigned int foo 0
  • 在“未验证”和“未授权”情况下使用什么 HTTP 代码?

    我读到了 401 未经授权 http www w3 org Protocols rfc2616 rfc2616 sec10 html当用户执行以下操作时必须使用代码 未登录 但需要登录 未验证 已登录 但他的个人资料不允许查看该网址 未授权
  • 任意角度滑动检测

    有什么方法可以检测 iPhone 中任意角度的滑动吗 UISwipeGestureRecognizer好像只有4个方向 如果我像这样滑动 X 我希望它能给我大约 60 度的角度 而不是像UISwipeGestureRecognizer 我怎