即使在拖动模式下,如何获取活动中的所有触摸事件?

发布于 2024-12-27 13:59:48 字数 357 浏览 0 评论 0原文

即使在拖动模式下,我也想获取活动中每个触摸点的 x 和 y 位置。当我实现 Activity 的 onTouchEvent 方法时,它没有获取所有触摸事件。我怎样才能做到这一点?

预先感谢,

public class MyActivity extends Activity {

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        // my Code
        return super.onTouchEvent(event);
    }
}

当您触摸活动周围时,此 onTouchEvent 方法就会启动。

I want to get x and y position of every touch point in my activity even in drag mode. When I implement onTouchEvent method of my activity, it does not get all of touch events. How can I do that?

Thanks in advance,

public class MyActivity extends Activity {

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        // my Code
        return super.onTouchEvent(event);
    }
}

This onTouchEvent method just rises when you touch around the activity.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

伪装你 2025-01-03 13:59:48

你还有其他处理触摸事件的视图吗?

文档说:

当任何视图未处理触摸屏事件时调用
在它下面。这对于处理发生的触摸事件最有用
在窗口范围之外,没有视图可以接收它。

因此,当您说处于拖动模式时没有收到任何事件时,这意味着您正在拖动某些东西。因此您已经在其他地方处理事件,因此 onTouchEvent() 方法不会收到通知。

您可以尝试在另一个 TouchListener 的 onTouch() 方法中返回 false,以便事件会进一步冒泡。

Do you have any other View which handle touch events?

The documentation says:

Called when a touch screen event was not handled by any of the views
under it. This is most useful to process touch events that happen
outside of your window bounds, where there is no view to receive it.

So when you say you don't get any events when you are in drag mode, this implies that you're dragging some thing. So you already handling the events somewhere else and therefore the onTouchEvent() method won't be notified.

You can try to return false in the other TouchListener's onTouch() method so the event will bubble up further more.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文