Ich versuche, eine Drag & Drop-Funktionalität in einer Android-Anwendung zu implementieren. Der Zieh-Teil ist fertig, das Einzige, was übrig bleibt, ist herauszufinden, in welcher Ansicht die gezogene Ansicht angezeigt wird. Hier ist die OnTouch Funktion meiner geschleppt Ansicht:Wie behandelt man onTouch Event eines Kindes in Eltern?
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;
}
}
Also im Grunde alle Bewegungsereignisse behandelt werden mit Ausnahme der ACTION_UP (in dem Moment, wenn die Ansicht realeased ist). Die Frage ist, wie soll ich dieses Ereignis in den Eltern aufrufen (übergeben Sie es an die Eltern onTouch-Handler), so kann ich herausfinden, wo es gelöscht wurde. Ich habe das onTouch-Handling in den Eltern implementiert, aber kein Ereignis wird abgefangen.
Danke, Levi
..nice Titel ... –