问题标签 [ontouch]

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 回答
1127 浏览

android - 从 OnTouchEvent 获取位置

我使用触摸事件来查找用户触摸的位置。我使用了以下代码

并根据位置调用一些方法。

当我在不同的设备上测试时,x 和 y 值发生了变化。有没有办法在所有设备上获得 x 和 y 的唯一值

0 投票
2 回答
1256 浏览

android - 在检测到 onTouch 的点绘制一个小矩形

我正在执行一个非常小的测试来调试更大的东西,并且无法弄清楚是什么导致了这个问题。

我有一个 ImageView、一个 Canvas 和一个位图。我初始化 ImageView 并将其设置为位图,然后将 Canvas 设置为位图,如下所示:

然后,我将 onTouchListener 附加到 _image 并侦听要检测的 MotionEvent.ACTION_UP。那时我在画布上画了一个矩形,如下所示:

我已经尝试过使用不同大小的位图图像,小到小于完整显示,到非常接近精确大小,大到更大,我永远无法让 Rect 在我的手指触摸屏幕的地方正确绘制。我在 getX() 上尝试了不同的转换,尝试从 dp 转换为 dp,改用 getRawX/Y();基本上是一堆不同的解决方案,但都没有奏效。我尝试获取位图大小与屏幕大小的比率并乘以/除以;没有什么能够解决这个非常简单的问题。

很可能我在某个时候尝试了正确的方法,只是错误地实施了它。我真的很感激一些关于是什么导致 Rect 在它所在的位置绘制的建议,需要什么转换才能让它在触摸发生的地方绘制,以及为什么。'为什么'是因为我想从中学习。

编辑:这是所发生情况的近似值。红色矩形是实际触摸发生的地方,蓝色是它被绘制的地方。它从你得到的 X=Y=0 扩展得越远。另外,我刚刚注意到它还会根据您使用的图像的宽度和高度进行缩放。

例子

0 投票
1 回答
108 浏览

android - 在列表上滑动操作

如何从滑动操作中使用的列表中找到特定的选定项目,以便对...进行更改... 我知道如何检测已经使用 onTouchListener 和 onItemClickListener 的滑动操作.... ? ...

但我的问题是如何将动作与其中一项匹配 onItemClickListener 自动匹配到选定的项目 onTouchListener 为整个列表提供一般操作

0 投票
1 回答
8653 浏览

android - 在 OnTouch 中返回真假?

我返回truefalse进入onTouch()有关系OnTouchListener吗?true我看不出返回或false在此示例中有任何区别: Android Swipe on List

0 投票
0 回答
225 浏览

java - 一起使用 onTouchEvent 和 onclick 事件

当 onTouchEvent 处于活动状态时,我无法启用按钮。在我的应用程序中,用户应该按下屏幕上的任意位置以查看文本,并在按下屏幕时按下按钮。问题是,当 onTouchEvent 处于活动状态时,按钮不起作用。在 onTouchEvent 处于活动状态时是否有启用按钮?

我的按钮和 onToch 代码如下所示。

编辑,添加 .xml

0 投票
1 回答
4111 浏览

java - OnTouchListener 返回值

我试图完全理解OnTouchListener,但我有一些疑问。

我有这个 xml 代码:

我已经在java中实现了这段代码:

当我返回 false in 时,我已阅读ACTION_DOWN,其余的手势 (MOVEUP) 不起作用。但它在此代码中有效,“向上”消息显示在屏幕上,但它不应该。所以我不完全明白OnTouch事件中的返回值是什么意思。

有人可以帮助我吗?

0 投票
1 回答
132 浏览

java - 获取改变onTouch的图表项目图像 - Android

我试图在GridView手指移动时让单个项目更改图像。我有两个图像,no_touchtouch。我想要的是在活动开始时将 GridView 中的所有项目设置为 no_touch,并且当手指触摸任何一个或多个项目时,只有那些项目会更改为touch图像。

到目前为止,我所能得到的只是当单击其中一个项目时,会更改整个GridView 的背景(并出现一个小吐司)。我希望能够沿着每个项目“滑行”并且只有那些改变图像。

到目前为止我的代码:

MainActivity.java

ImageAdapter.java

如果有人知道如何,即使只是为了在点击上获得单个项目更改图像,那将是非常棒的。

提前致谢,

0 投票
1 回答
547 浏览

android - Android 使用 OnLongClickListener ListView 实现 OnTouch

我试图将 ListViewRemovalAnimation ( http://developer.android.com/shareables/devbytes/ListViewRemovalAnimation.zip ) 与 Cell Dragging & Rearranging ( http://developer.android.com/shareables/devbytes/ListViewDraggingAnimation.zip )结合起来

当用户在 onTouch 中按住视图 x 秒并因此调用 LongClick 时,我试图返回 false。

但是滑动到删除似乎工作得很好,但我似乎找不到在需要时调用 onLongClickListener 的方法。我尝试获取用户第一次按下视图和当前时间之间的时间差,但这似乎不起作用。我还考虑过使用带有 runable 的 Handler,但我想不出一种方法来完成我想要的。

我有一种感觉,我从错误的角度来处理这个问题,但是任何通过拖动和重新排列列表视图来滑动删除的帮助将不胜感激:)

这是 OnTouch 的代码:

我也没有编辑任何 ListViewDraggingAnimation OnLongClick 代码。

编辑:我尝试将 SystemClock.uptimeMillis() - event.getDownTime() > 2000 之间的比较放在开关之外,认为 Action_Down 仅在用户仅按下时执行,但仍然没有返回 false。我认为问题可能出在逻辑比较本身

0 投票
1 回答
733 浏览

java - ListView onTouch MotionEvent

我有一个列表 ListView。为它写了一个处理程序。当您触摸菜单项 (ACTION_DOWN) 时,我会突出显示它。当您释放项目 (ACTION_UP) - 返回原始颜色。问题是,如果您触摸并滚动 - 然后该项目会突出显示。或者,如果您在其他项目上触摸并移动手指。

0 投票
3 回答
629 浏览

android - 从 onTouch 开始一个 Intent

我尝试从 onTouch 块启动一个新活动,但应用程序突然终止。我的代码是: