我正在尝试在Android应用程序中实现拖放功能。拖动部分已经完成,唯一剩下的是弄清楚被拖动的视图将会落在哪里?更准确地说,它将落在哪个视图上。 这是我的拖动视图的onTouch函数:
public boolean onTouch(View v, MotionEvent event) {
// Is the event inside of this view?
if (!mRegion.contains((int) event.getX(), (int) event.getY())) {
return false;
}
if (event.getAction() == MotionEvent.ACTION_DOWN) {
...
System.out.println("**** IMAGE DRAG STARTED!");
return true;
} else if (event.getAction() == MotionEvent.ACTION_MOVE) {
...
this.invalidate();
return true;
} else if (event.getAction() == MotionEvent.ACTION_UP){
System.out.println("**** ICON DRAG ENDED!");
return false;
} else {
return true;
}
}
除了 ACTION_UP(视图释放的时刻)之外,所有运动事件都已处理。问题是如何使此事件在父级中调用(将其传递给父级的 onTouch 处理程序),以便我可以找出它被放置在哪里。我已经在父级中实现了 onTouch 处理,但没有捕获到任何事件。
谢谢。