0

我需要创建一个用户可以点击的窗口。我需要知道用户何时开始点击、停止点击、用户是否移动手指并保持向下,以及他点击的位置的确切坐标,以及他实时移动手指的位置。我不明白哪种小部件最适合这种活动:有人可以给我一个提示吗?谢谢。

4

1 回答 1

1

带有附件的任何View(包括任何)都可以做你正在寻找的东西。在这种情况下,您可以记录点击发生的位置;在事件中,您可以获得当前指针位置的坐标。ViewGroupOnTouchListenerACTION_DOWNACTION_MOVE

只需将 an 附加OnTouchListener到您的视图并相应地处理它:

View view = findViewById(R.id.my_view);
view.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View view, MotionEvent event) {
        switch(event.getAction()) {
            case MotionEvent.ACTION_DOWN:
                float xTap = event.getX();
                float yTap = event.getY();
                break;
            case MotionEvent.ACTION_MOVE:
                float xMovement = event.getX();
                float yMovement = event.getY();
                break;
        }
    }
}
于 2013-01-04T00:35:51.567 回答