Как мне зарегистрироваться на событие для объекта без необходимости анонимного класса? - PullRequest
0 голосов
/ 22 сентября 2011

Я создаю приложение для Android. У меня есть диалог, и я хочу обработать событие onCancel () без использования анонимного класса, потому что он чище и есть переменные класса, к которым мне нужен доступ из основного класса Activity. Я ищу способ регистрации событий в объекте, похожем на .NET, где я могу обработать его в отдельном методе класса без необходимости анонимного класса.

1 Ответ

3 голосов
/ 22 сентября 2011

Вот хороший пример здесь в разделе прослушивателей событий.

Первый пример использует анонимный класс для слушателя; вторая использует метод внутри Activity. Никаких дополнительных занятий не требуется.

TL; DR Вот код, украденный с этой страницы:

public class ExampleActivity extends Activity implements OnClickListener {
    protected void onCreate(Bundle savedValues) {
        ...
        Button button = (Button)findViewById(R.id.corky);
        button.setOnClickListener(this);
    }

    // Implement the OnClickListener callback
    public void onClick(View v) {
      // do something when the button is clicked
    }
    ...
}

Вы можете изменить это, чтобы использовать onCancel().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...