Android: ViewGroup, wie abfangen MotionEvent und dann den Versand an den Gegner oder Essen es auf Nachfrage?

Gegeben, dass es eine ViewGroup mit mehreren Kindern. Für diese ViewGroup, würde ich mag, um es der Verwaltung alle MotionEvent für alle seine Kinder, was sagt die VG wird
1. in der Lage sein zu fangen alle Ereignisse, bevor Sie versandt werden, um den Gegner (Kinder)
2. VG werden zuerst verbraucht das Ereignis, und zu bestimmen, wenn die weitere Zusendung Veranstaltung Zielgruppe Kind
3. UNTEN,,, ich würde gerne sehen, wie Sie als relativ unabhängig, was bedeutet, VG Essen konnte nach UNTEN, sondern geben VERSCHIEBEN und BIS zu den Kindern.

Habe ich gelesen SDK guide "Umgang mit UI-Event", ich wusste, dass Ereignis-Listener Handler, ViewGroup.onInterceptTouchEvent(MotionEvent), und Anzeigen.onTouchEvent(MotionEvent).

Hier ist mein Beispiel,

@Override
public boolean onInterceptTouchEvent (MotionEvent event) {
    if (MotionEvent.ACTION_DOWN == event.getAction()) {
        return true;
    }

    return super.onInterceptTouchEvent(event);
}

@Override
public boolean onTouchEvent(MotionEvent event) {
    if (MotionEvent.ACTION_DOWN == event.getAction()) {            
        return true;
    }
    else {
        if (!consumeEvent(event)) {
            //TODO: dispatch to target since I didn't want to eat event
            //return this.dispatchTouchEvent(event);     //infinite loop!!!
        }
    }


    return super.onTouchEvent(event);
}

Essen zu können einige der Ereignisse, ich muss true zurückgeben, im oben genannten beiden Methoden beim DOWN-Ereignis aufgetreten ist, da SDK gesagt. Dann konnte ich sehen, BEWEGEN und bis in onTouchEvent. Allerdings, in meinem Fall, ich habe keine Ahnung, wie der dispatch-event für Kinder.

Oben dispatchTouchEvent führte zu Endlosschleife, was verständlich war, da die VG selbst könnte das Ziel sein. Ich kann nicht sagen, das würde sein Ziel in diesem moment, MotionEvent nicht einen Tipp geben, so dispatchTouchEvent war völlig nutzlos.
Mir jemand helfen? Danke.

können Sie helfen mir in dieser situation Mein Problem oder im Andere Frage

InformationsquelleAutor fifth | 2011-05-09

Schreibe einen Kommentar