Как заставить слушателя взгляда

Я пишу сервис, который взаимодействует с другими приложениями. Он регистрирует слушателей по представлениям (кнопкам, текстовым представлениям, ...), которые уже имеют слушателей. Мне нужно заменить их своими собственными слушателями (работами), сделать что-нибудь, а затем отменить регистрацию моих слушателей и восстановить старых.

Приложение с кнопкой с onClickListener работаетМой сервис регистрирует onClickListener внутри UI-Thread + делать что-тоМой сервис восстанавливает старого слушателя

Было бы легко, если быview.getOnClickListener -метод. Тогда я смогу сохранить старые и заменить новых слушателей, когдам сделано.

Есть ли способ получить слушателей из представления или иметь более одного слушателя одного типа, привязанного к одному представлению?

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();

Если я регистрирую новых слушателей в представлении, старые переопределяются, верно? Было бы также хорошо, если бы оба слушателя ("новый» а также "старый») существуют одновременно. Только старые не должны исчезнуть.

Редактировать: К сожалению, у меня нет возможности сохранить слушателя на задании. Мне нужно получить его обратно из компонента просмотра.

Спасибо

Ответы на вопрос(3)

Ваш ответ на вопрос