问题标签 [touchesmoved]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
4688 浏览

iphone - 在 iPhone 应用程序的 UITextView 中禁用放大镜

我想显示文本,并且我希望能够知道用户在该文本中触摸的位置。因为文本可能很长,我想使用 UITextView 以便包装和一切都得到照顾。当触摸开始或移动时,我想要我自己的事件处理。我的问题是放大镜和选择/选择所有菜单正在中断我的 touchesMoved 事件。

如何禁用放大镜,但仍启用用户交互以便检测触摸?

0 投票
1 回答
1812 浏览

iphone - 增加 touchesMoved 的调用频率

有没有办法比默认的增加 touchesMoved 的频率调用?我需要更多的调用来绘制一个平滑的圆圈。默认情况下,它的调用频率不会太高,所以我得到了一个前卫的圈子。有没有办法调整 touchesMoved 调用的频率?

谢谢

0 投票
1 回答
971 浏览

iphone - iPhone 多点触控 - 一些触控分派 touchesBegan: 但不是 touchesMoved:

我正在开发一个多点触控应用程序。预计一触就会移动,我需要跟踪它的位置。对于所有其他的触摸,我需要跟踪它们的开始和结束,但它们的动作不那么重要。

有时,当 3 次或更多触摸处于活动状态时,我的 UIView 不会收到 touchesMoved: 移动触摸的事件。这个问题是间歇性的,经过几次尝试后总是可以重现:

  • 用 2 根手指触摸屏幕。
  • 用另一根手指触摸屏幕,然后四处移动这根手指。
  • 移动的手指总是调度 touchesBegan: 和 touchesEnded:,但有时不会调度任何 touchesMoved: 事件。

每当移动触摸不调度 touchesMoved: 事件时,我可以强制它调度 touchesMoved: 如果我移动其他触摸之一。这似乎“强制”每次触摸都重新检查其位置,并且我成功收到了 touchesMoved: 事件。然而,这很笨拙。

此错误在 iPhone 2G 和 3GS 型号上都可以重现。

我的问题是:如何确保我的移动触摸调度 touchesMoved: 事件?

有没有人有这个问题的经验?我花了几天时间寻找答案。我发现了一篇描述如何与 VBL 同步触摸事件的帖子:http ://www.71squared.com/2009/04/maingameloop-changes/ 。然而,这并没有解决问题。

我真的不知道如何进行。任何帮助表示赞赏!

0 投票
1 回答
383 浏览

objective-c - 限制 touchesmoved 物体与墙壁碰撞?

我正在尝试创建一个非常简单的游戏,您可以在其中拖动一个简单的 imageView。问题是框​​架中有一面墙(只是一个矩形),图像不应该放在上面。所以我做了这样的事情:

但问题是图像确实超出了它的界限,然后卡在那里并且touchesmoved结束了。

所以我添加了这个:

但这使得图像在与“墙”相交时开始闪烁并最终卡在那里。

我觉得必须有一个简单的方法来做到这一点。谁能启发我?

0 投票
1 回答
2694 浏览

objective-c - 获取命中测试事件类型

有没有办法知道该hitTest:withEvent:方法是否由于 touchesBegan、touchesMoved 或 touchesEnded 事件而被抛出?

现在我只做:

但这还不够独特

0 投票
1 回答
343 浏览

objective-c - 处理触摸

我有一个带有几个子视图的 UIView 子类,我想在类中处理这些事件:

  • touchesBegan:withEvent:
  • touchesMoved:withEvent:
  • touchesEnded:withEvent:

但我也希望在子视图中调用这些事件。我怎样才能做到这一点?

(我已经尝试过使用 hitTest,但我只得到了 touchesBegan 事件,并且没有使用该方法发送任何触摸)

0 投票
1 回答
261 浏览

iphone - 使用 UIScrollView 时第二个 UIScrollView 响应

这更像是一种检查,因为我认为这是正确的,但如果我错了,它的工作量很大。

我想基本上用scrollView实现固定定位。我想在顶部有一个始终可见的列表,仅水平滚动,然后在其下方有一个滚动视图来移动垂直和水平滚动的信息。

我想我需要继承 UIScrollView 并覆盖 touchesBegan、touchesMoved 和 touchesEnded 以将触摸发送到两个 UIScrollView。

这是正确的还是偏离轨道?

干杯

0 投票
2 回答
1101 浏览

ipad - 启动 touchesMoved/UIPanGestureRecognizer 中途移动以获得新视图

概念是用户点击视图中的图标,图标的副本在用户的手指下弹出,他们可以拖动它直到他们抬起手指。为此,我希望以下

  1. 图标有触摸事件
  2. 添加透明的全屏 UIView 并粘贴一个包含图标的 UIImageView 。
  3. 跟踪 touchMoves 或 uiPanGestureRecognizer 并移动 UIImageView 直到触摸

问题是 touchMoves(和 uiPanGestureRecognizer)在用户抬起手指并放回原位之前不会跟踪。即正在发生的事情是:

  1. 图标有触摸事件
  2. 添加透明的全屏 UIView 并添加一个包含图标的 UIImageView 子视图。
  3. 用户拖动手指并没有任何反应,所以他们抬起手指并再次拖动
  4. 跟踪 touchMoves 或 uiPanGestureRecognizer 并移动 UIImageView 直到触摸

显然,要让 UIView 识别拖动,它似乎必须源自 UIView。我尝试(天真地)将触地事件发送到透明视图,但它不起作用。

还有其他想法吗?

非常感谢...

0 投票
1 回答
620 浏览

iphone - 关于创建 iPhone Piano UI 的问题

我正在尝试创建一个 iPhone 钢琴应用程序。我在 Interface Builder 中创建了 14 个不同的 UIImageViews 来表示键。使用 touchesBegan、touchesMoved、touchesEnded 和 touchesCancelled 然后我尝试播放音频文件。

因此,当您移动手指(touchesMoved)时播放声音后,我已经使用 NSMutableArray 解决了。

代码(我只复制了 C 键,其他键的代码相同)如下所示:

我的 .h 文件:

我的 .m 文件:

(我将用 OpenAL 或其他东西替换“AudioServicesPlaySystemSound”)

现在我的问题:

如果您在没有抬起手指的情况下将手指移动到另一个键,则会播放声音,但该键仍然突出显示。此外,如果您再次向后移动手指,则不会播放任何声音。

另外,两根手指按的时候也有问题,拿走一根。然后再次播放第一个键的音调。

当您按下其中一个黑键时,您也会听到声音,也会听到相邻白键之一的声音。

总的来说,我使用这种方法来创建钢琴 UI 有很多我无法单独解决的问题。

是否有另一种方式来编写整个应用程序?或者有任何关于我如何解决问题的提示吗?

谢谢乔乔斯。

PS:对不起英语不好,我是德国人。

0 投票
1 回答
979 浏览

iphone - touchesMoved UIView 检测

我有 2 个不相交的 uiimageviews foo1,foo2,我有 3 个函数touchesBegan,,,touchesMovedtouchesEnded

我按住 foo1 并将手指移动到 foo2,但从 nslog 我收到 foo1 消息。

touchesMoved当触摸 foo 2 时,是否有可能确定功能?

谢谢