0

在我的onTouch(View view, Motionevent event)方法中,view.getY()总是返回相同的(0.0)。我想检查正在触摸什么视图并将其与int Y = event.getRawY(). 这样的事情可能吗?

原因是我的布局中有几个动画字段,我想根据被触摸的视图对每个视图进行不同的动画处理。我将不胜感激任何建议或想法。先感谢您

4

2 回答 2

0

首先检查 api 参考。请参阅 View.getY 和 Motionevent.getRawY。

于 2013-10-01T13:01:34.463 回答
0

我这样做是为了解决我的问题:

LinearLayout animLayout = new LinearLayout(this);
animLayout.addView(//add some view);
animLayout.setId(1)
animLayout.setOnTouchListener(this);

@Override
public boolean onTouch(View view, MotionEvent event){
    case MotionEvent.ACTION_UP
        switch (view.getId()}
        case 1:
            //My code
            break;
        }
        break;
    }
}

基本上,给我的视图一个 ID,然后在我的 onTouch 中获取一个开关盒中的 ID,然后用它做我想做的事。

于 2013-10-03T11:47:22.443 回答