在iOS模拟器中是否可以进行边缘滑动?

19

iOS 7提供了UIScreenEdgePanGestureRecognizer,可以检测屏幕边缘的滑动手势。在Xcode的iOS7模拟器中是否可以模拟此手势?在屏幕区域外单击并拖动只会移动整个模拟器框架。

2个回答

35
在模拟器版本11.4中,我看到了以下选项:
  • 窗口 -> 显示设备边框
它会在模拟的手机周围显示一个虚拟设备框架:

enter image description here

这使得我们能够从屏幕“外部”开始手势。我成功地从左边触发了一个UIScreenEdgePanGestureRecognizer

我一整天都在苦苦挣扎。现在,在从边框拖动时,使用导航控制器的默认配置它可以工作了。 谢谢! - VoodooBoot

22

您不必在边缘滑动才能触发 UIScreenEdgePanGestureRecognizer,只需非常靠近边缘开始。 如果我距离边缘不超过约15个点,则有效。

(这是针对模拟器的。 我从未在设备上测试过)


另外需要注意的是:您必须为每个边缘创建一个gestureRecognizer。 您不能将边缘OR在一起,因此UIRectEdgeAll不起作用。


5
文档中,给人的印象是我们可以将边缘OR在一起。但实际上,你说的没错,每个边缘都被单独处理。 - Jon
1
我给你点赞是因为你的附注。我一直在调试 OR,直到意识到这确实是这种情况。我不知道是否暗示了,但我没有从文档中得到这种感觉。 - johncch
谢谢 @Jon!在我做了那个之前,它一直不起作用。这是一个示例Xcode项目和UIScreenEdgePanGestureRecognizer的代码 - Paul Solt
2020年的更新答案是更好的选择。谢谢。 - Dan Rosenstark

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接