问题标签 [touch-event]

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 投票
2 回答
1727 浏览

javascript - touchEnd 和 onMouseUp 都从 iPad 触发

我正在构建一个将在笔记本电脑和 iPad 上使用的页面。因此,大部分代码(它的拖放很重)在鼠标事件和触摸事件中重复。但现在我发现了一个非常奇怪的行为:在笔记本电脑上使用时,一切都很好,但在 iPad 上使用时,touchEnd 会定期触发 mouseUp ......并且因为页面的总体目标是一系列事件,这会使整个事情偏离轨道(已实现步骤'n',但随后 mouseUp 函数对其进行重新测试,并且由于它已经完成,因此失败)

花了很长时间才弄清楚(因为我不认为这是可能的),但是通过将独特的日志消息放在不同的版本中,我可以看到在 iPad 上的日志中,我收到了“鼠标错误”消息。

因为这种交叉事件行为对我来说不合逻辑,所以我不确定如何继续调试,所以任何人都可以提供任何建议,我将不胜感激。以下是主要代码片段,然后是来自 IPAD 的示例日志。再次感谢。

日志:

0 投票
1 回答
1977 浏览

jquery - 某些触摸事件会导致多个事件,我该如何限制所需的事件?

因此,如果我点击或点击它会按预期工作,但如果我滑动我应该得到两个事件。滑动和滑动方向,但我也得到一个点击事件。如果发生滑动或滑动方向,有没有办法删除点击事件?

现场示例:

HTML:

JS:

相关问题:滑动事件触发 ipod touch 的点击事件

更新: -http: //jsfiddle.net/hJtAQ/31/(使用 Jaspers 方法)

0 投票
1 回答
748 浏览

android - GameLoop 检查输入 (Android/GlSurfaceView)

如果我在线程中有一些基本的游戏循环,如下所示:

我想知道如何实际检查输入(即触摸屏)。我知道我可以在我的视图类中使用 onTouchEvent(),但我想从我的游戏循环中检查它。这是怎么做的?

ps:我正在使用带有 GlSurfaceView 的 android。

0 投票
2 回答
714 浏览

android - 在 Android 中使用 Hold 触摸多个图像

我有这个main.xml文件:

我想要实现的是:

  • 当用户触摸并按住img1时,图片变为按下的图片(即从z01.png变为z01_pressed.png)
  • 当(例如)用户在他持有的同时从 img1 移动到 img2 时,img2 被按下(将其图片从 z02.png 更改为 z02_pressed.png)并且 img1 返回到它的状态(到 z01.png)。

为了实现这一点,我在onCreate方法中写了这个:

但是,这不起作用。我有什么问题吗?

0 投票
1 回答
3561 浏览

android - Android:扩展 onTouchEvent 以进行拖动的 ImageView

我写了一个简单的纸牌游戏,用户在三个图像视图(卡片)之一上玩他的卡片,我想通过拖动“桌子”上的 ImageView 来增加玩卡片的可能性(桌子是另一个布局或只是屏幕的另一部分)。

我尝试使用 http://blahti.wordpress.com/2011/01/17/moving-views-part-2/中指示的技术, 但由于它使用 AbsoluteLayout,它对我当前的布局引入了很多限制,更多它需要根据应用程序运行的设备屏幕分辨率进行调整。我想避免这种情况继续使用-如果可能的话-RelativeLayout。也许起点是扩展 ImageView 添加 onTouch 支持,但我无法重现希望的效果(拖动)任何想法或建议或示例代码?谢谢!

只是给出一个想法,这是布局的草稿。下面的 3 张卡片应该通过拖动来移动。

0 投票
1 回答
3293 浏览

android - Android 多点触控获得错误的指针和/或 XY 值

我在从多点触控事件中获取 X 和 Y 值时遇到问题。下面是显示当 POINTER_DOWN 和 POINTER_UP 事件被触发时我如何获取值的代码,但是 X 和 Y 值似乎在 POINTER_UP 事件上混合/重复。

这通常会导致以下 lolcat:

在这里,您可以看到 id 1 的 XY 位置是错误的,而是显示值 id 2。

请注意,不会调用任何 ACTION_CANCEL 事件。我想我使用 MASKS/ANDing 有问题。任何帮助将非常感激!

0 投票
1 回答
1195 浏览

android - 检测使用 Rect 转换绘制的位图的触摸

对于使用简单 (x,y) 坐标绘制的位图,

我可以检测位图是否被触摸

我正在用

试图合并 屏幕密度,因为“此函数忽略与位图相关的密度。......所以必须已经应用了适当的缩放因子。”

我无法检测到对翻译位图的触摸。我必须使用 进行类似的翻译mScale,但我迷路了。

有没有更好的方法来定义我原来的 src 和 dest canvas.drawBitmap(bitmap, src, dest, null);

有人知道这样做的例子吗?我似乎找不到合适的搜索词来找到这样的例子。

0 投票
2 回答
1795 浏览

javascript - iPad - touchStart() 事件被 div 文本阻止

我有一个触发touchStart事件的 div:

当我的手指落在 div 内的文本按钮上时,事件不会被触发,div 事件表面上的其他任何地方都会被触发,当我触摸文本时如何让它触发?

0 投票
1 回答
1614 浏览

android - 带有计时器和触摸事件(移动)处理的 Android 游戏方法

我正在做一个带有游戏循环和主动渲染的游戏(使用 SurfaceView 和 SurfaceHolder.Callback)。

我想知道如何使它与定时事件和触摸事件管理一起工作。定时事件就像每个 xx ms 发生一些事情,每个 yy ms 发生一些不同的事情。触摸管理是在向下、向上和移动时更新游戏和屏幕。

我已经尝试了几次,但它看起来有点尴尬,游戏表现不佳..

一方面,我有一个经典的游戏循环(在单独的线程中):在运行更新、渲染、绘制、睡眠时

现在我不太清楚如何使用计时器循环来完成这项工作。我使用了处理程序方法 - 创建扩展处理程序的类,在 handleMessage 中执行它们必须执行的操作,然后使用 sendMessageDelayed 调用它们自己。

他们只是更新游戏状态。生成的更改的渲染将在游戏循环中完成。

这种方法需要同步更新游戏循环而不干扰计时器的更新。

而且——除此之外,我还需要处理触摸事件——向下、向上和移动!我的方法是,就像在计时器中一样,只需更新游戏状态,然后将其留给循环来正确处理和显示。

我不知道我是否可能走在完全错误的道路上,对 Androd 来说是新手,并让它就像我认为的“可行”。

例如,我不确定是否有必要在单独的线程中制作游戏循环。我以为是,按照一定的帧率显示触摸处理(移动)的结果。

另一方面,我可以离开循环并在每次计时器更新后以及每次触摸处理后告诉绘制,但这也不能很好地工作。

问题是这种游戏的一般方法是什么?(必须连续呈现到屏幕的定时循环/触摸事件(移动))。

提前致谢。

0 投票
1 回答
585 浏览

android - Android touchevent---根据场景需要帮助/建议

现在我有一个 ImageView 和它的一个圆圈,它位于比中心位置略低的位置(但这不重要)。

我已经为 ACTION_DOWN,ACTION_UP 编写了 ImageView 的触摸代码,现在考虑用户将手指放在圆圈上并移动和移动....我想在用户移动手指并超出 CIRCLE 图像区域时激活一些代码(只要用户超出区域代码应该只执行一次)

这是我的代码

我无法通过 ACTION_MOVE 归档我的目标:如果用户在圆圈内移动手指,它就会开始工作

我的第二个查询是如何设置我使用过的这个 imageview 的 alpha

但不起作用,我也使这个图像视图不可见,但我的 onTouch 代码不起作用