ios模拟器:模拟滑动和拖动

Posted

技术标签:

【中文标题】ios模拟器:模拟滑动和拖动【英文标题】:ios simulator: simulate swipe and drag 【发布时间】:2011-11-13 18:54:20 【问题描述】:

我在 UIScrollView 中有一个 UIView。当我想模拟 UIView 上的拖动事件时,正在触发 UIScrollView 上的滑动事件。

根据 documentation ,滑动和拖动之间没有太大区别。 滑动

1- Place the pointer at the start position.  
2- Hold the mouse button. 
3- Move the pointer in the swipe direction and release the mouse button.

拖动

1- Place the pointer at the start position.
2- Hold down the mouse button.
3- Move the pointer in the drag direction.

在 ipad 上,我可以用两根手指两次滑动和一根手指拖动。现在,我该如何在模拟器上做类似的事情;拖动而不是滑动?

编辑 1: 我应该先更清楚。无论如何,我的问题是鼠标拖动是触发滑动而不是拖动,从而滚动滚动视图而不是将拖动事件传递给滚动视图包含的 UIView。 我在macbook pro上。触摸板上的两指轻扫被忽略。触摸和拖动导致与鼠标拖动相同的事情。 谢谢

【问题讨论】:

可以通过使用macbook触摸板/魔术触控板吗? @Marek 触摸板没有多大帮助。两指滑动被忽略,没有任何反应。按住并拖动会产生与鼠标拖动相同的效果。我已经更新了问题。 嗯,手势和滚动视图有点问题,因为它首先接收事件......如果你真的想这样做,我认为你应该覆盖 hitTest:withEvent: 并检查哪个视图有事件并传递给它 【参考方案1】:

请参阅以下文档: ios Simulator User Guide

只需使用鼠标拖动视图,也就是左键单击视图然后移动鼠标

【讨论】:

【参考方案2】:

我最终禁用了 UI 的滚动,并添加了两个按钮来滚动滚动视图。由于这仅适用于模拟器,因此我在为设备构建时使用了#ifndef 来隐藏按钮。

【讨论】:

这没有回答最初提出的问题。【参考方案3】:

请参阅Jeff LaMarche's quick note 了解如何执行此操作。它记录在您正在阅读的同一页中,但 Jeff 的解释更清楚。

如果您想在 iPhone 模拟器中模拟两指手势,请按住选项键。您将在屏幕上看到两个点,而不是一个。这两个点将默认为捏合 - 如果您将点靠近屏幕中心,另一个点会朝向中心,从而可以轻松模拟捏合或捏合。

如果您想做不同的两指手势,请将两个点分开您希望的距离,然后按住 shift 键,同时按住 option 键。这会将两个手指按下的位置锁定在一起,以便您可以执行例如两指滑动。

【讨论】:

@Rob 我的问题是鼠标拖动正在触发滑动(两个手指手势)。我无法触发拖动事件(一个手指手势)。更新了问题。

以上是关于ios模拟器:模拟滑动和拖动的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ios 模拟器上模仿两指滚动/拖动手势?

CSS3模拟IOS滑动开关

如何在ios模拟器中缩放图像?

iOS真机和模拟器CPU架构

在 iPad 模拟器中滑动和拆分视图

iOS 11开发教程iOS11模拟器介绍二