Android OnClickListener

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

Android OnClickListener

OnClickListener to interfejs w Androidzie służący do obsługi zdarzenia kliknięcia widoku. Najczęściej używa się go przy przyciskach (Button), ale może być przypisany także do innych elementów interfejsu, np. ImageView, TextView lub LinearLayout, jeśli są klikalne.

Do czego służy?

Metoda setOnClickListener() rejestruje obiekt nasłuchujący, który zostanie uruchomiony wtedy, gdy użytkownik kliknie dany element interfejsu.

Przykład w Javie:

Button przycisk = (Button) findViewById(R.id.yes_button);

przycisk.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // kod wykonywany po kliknięciu przycisku
    }
});

W tym przykładzie obsługiwane jest zdarzenie naciśnięcia przycisku.

Najważniejsze elementy kodu

  • findViewById(R.id.yes_button) - odszukuje element interfejsu z pliku layoutu,
  • Button - typ kontrolki, czyli przycisk,
  • setOnClickListener(...) - ustawia obsługę kliknięcia,
  • onClick(View v) - metoda wykonywana po kliknięciu.

Typowe zastosowania

OnClickListener wykorzystuje się m.in. do:

  • przejścia do kolejnego ekranu aplikacji,
  • zatwierdzenia formularza,
  • wyświetlenia komunikatu Toast,
  • zmiany tekstu lub koloru elementu,
  • uruchomienia obliczeń po kliknięciu przycisku.

Czego nie obsługuje?

OnClickListener nie służy do obsługi zmiany tekstu w polu EditText, wyboru daty ani zmiany stanu przełącznika Switch. Do takich zdarzeń stosuje się inne mechanizmy, np. TextWatcher, DatePicker lub OnCheckedChangeListener.