Android: Touch-Ereignis an untergeordnete Ansicht delegieren

Ich habe die folgende Hierarchie:Activity ->PopupWindow ->CustomView

Mein dasPopupWindow selbst ist ein Quadrat, aber transparent, sodass Sie die Aktivität im Hintergrund sehen können. DasCustomView ist ein im PopupWindow eingebetteter Kreis.

Was ich bisher erreicht habe ist

Benutzer klickt auf grünen Kreis und ich rufe "einige Sachen" auf Benutzer klickt außerhalb desPopupWindow und das Berührungsereignis wird an die Aktivität gesendet.

Der fehlende Teil ist jetzt, um jedes Berührungsereignis auszulösen, das innerhalb des @ passierPopupWindow aber außerhalb desCustomView (Kreis) zur Aktivität.

Ich weiß bereits, wie ich spüre, wenn sich die Berührung außerhalb meines Kreises befindet. Ich habe nur Probleme, es an die Aktivität zu delegieren.

In meinemCustomView Ich habe die folgenden inonTouch

if (radiusTouch > maxRadius) {
    return false;
}

In meinemPopupWindow Ich habe bereits Folgendes eingerichtet, aber es wird nie aufgerufen:

popup.setTouchInterceptor(new OnTouchListener() {

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        Log.i(TAG, "PopupWindow :: onTouch()");
        return false;
    }
});

Was muss ich noch tun, um das Berührungsereignis bis zur Aktivität zu delegieren?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage