gpt4 book ai didi

android - 带有 onItemLongclick 的手势检测器

转载 作者:行者123 更新时间:2023-11-29 14:04:43 25 4
gpt4 key购买 nike

如何将 GestureDetector 与 onItemLongClick 集成?

我有一个包含三个图像的 GridView。当我触摸第一张图片时,我想显示 Toast 消息。当我从屏幕上抬起手指时,我想显示第二条 Toast 消息。

我知道 GestureDetector 使用 MotionEvent,但 onItemLongClick 不使用。但在这种情况下,我需要跟踪图像在网格中的位置 ID,因此不可能在 onTouch() 内部实现?

最佳答案

您可以使用此类跟踪光标的运动,无论是屏幕触摸还是 TrackBall 移动,如果它跨越到下一张图片,您就可以处理该事件。这是从 sdk 示例中获取的示例:

    @Override public boolean onTouchEvent(MotionEvent event) {
int action = event.getActionMasked();
if (action != MotionEvent.ACTION_UP && action != MotionEvent.ACTION_CANCEL) {
int N = event.getHistorySize();
int P = event.getPointerCount();
for (int i = 0; i < N; i++) {
for (int j = 0; j < P; j++) {
mCurX = event.getHistoricalX(j, i);
mCurY = event.getHistoricalY(j, i);
drawPoint(mCurX, mCurY,
event.getHistoricalPressure(j, i),
event.getHistoricalTouchMajor(j, i));
}
}
for (int j = 0; j < P; j++) {
mCurX = event.getX(j);
mCurY = event.getY(j);
drawPoint(mCurX, mCurY, event.getPressure(j), event.getTouchMajor(j));
}
}
return true;
}

您可以在 C:\YourInstallDir\android-sdk\samples\android-10\ApiDemos\src\com\example\android\apis\graphics\TouchPaint.java 阅读更多内容并查看 SDK 中的文件,或者直接搜索MotionEvent 的整个示例文件中还有更多用途。

关于android - 带有 onItemLongclick 的手势检测器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7721159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com