Jak uzyskać słuchacza widoku

Piszę usługę, która współdziała z innymi aplikacjami. Rejestruje słuchaczy na widokach (przyciski, teksty, ...), które już mają słuchaczy. Muszę je zastąpić własnymi słuchaczami (utworami), zrobić kilka rzeczy, a następnie wyrejestrować moich słuchaczy i przywrócić stare.

Uruchomiona jest aplikacja z przyciskiem z onClickListenerMoja usługa rejestruje onClickListener wewnątrz UI-Thread + zrób cośMoja usługa przywraca starego słuchacza

Byłoby łatwo, gdyby byłoview.getOnClickListener -metoda. Wtedy mógłbym uratować stare i zastąpić nowych słuchaczy, kiedy skończę.

Czy jest jakiś sposób, aby uzyskać słuchaczy z widoku lub mieć więcej niż jednego słuchacza tego samego typu związanego z jednym widokiem?

Button btn = (Button) findViewById(R.id.btn1);
btn.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            //do something
        }
    });
// I need to do, but found no solution for that.
View.OnClickListener oldListener = btn.getOnClickListener();

Jeśli zarejestruję nowych słuchaczy w widoku, stare zostaną zastąpione, prawda? Byłoby również w porządku, gdyby obaj słuchacze („nowi” i „starzy”) istnieli w tym samym czasie. Tylko stare nie mogą zniknąć.

edytuj: Niestety nie mam możliwości zapisania słuchacza przy przydzielaniu. Muszę go cofnąć ze składnika widoku.

Dzięki

questionAnswers(3)

yourAnswerToTheQuestion