Dodaj pływający przycisk polecenia

Wypróbuj Compose
Jetpack Compose to zalecany zestaw narzędzi do tworzenia interfejsu na Androidzie. Dowiedz się, jak dodawać komponenty w Compose.

Pływający przycisk polecenia (FAB) to okrągły przycisk, który uruchamia główne działanie w interfejsie aplikacji. Z tego dokumentu dowiesz się, jak dodać FAB do układu, dostosować jego wygląd i reagować na kliknięcia przycisku.

Więcej informacji o tym, jak zaprojektować FAB w aplikacji zgodnie z wytycznymi Material Design, znajdziesz w artykule Pływający przycisk polecenia w Material Design .

Ilustracja przedstawiająca ekran aplikacji z czerwonym przyciskiem FloatingActionButton
Rysunek 1. Pływający przycisk polecenia (FAB).

Dodawanie pływającego przycisku polecenia do układu

Poniższy kod pokazuje, jak element FloatingActionButton wygląda w pliku układu:

<com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="end|bottom"
        android:src="@drawable/ic_my_icon"
        android:contentDescription="@string/submit"
        android:layout_margin="16dp" />

Domyślnie FAB jest kolorowany za pomocą atrybutu colorAccent, który możesz dostosować za pomocą palety kolorów motywu.

Inne właściwości FAB możesz skonfigurować za pomocą atrybutów XML lub odpowiednich metod, takich jak:

  • rozmiar FAB za pomocą atrybutu app:fabSize lub metody setSize()
  • kolor efektu fali FAB za pomocą atrybutu app:rippleColor lub metody setRippleColor()
  • ikona FAB za pomocą atrybutu android:src lub metody setImageDrawable()

Reagowanie na kliknięcia przycisku

Następnie możesz zastosować View.OnClickListener aby obsługiwać kliknięcia FAB. Na przykład poniższy kod wyświetla Snackbar gdy użytkownik kliknie FAB:

Kotlin

val fab: View = findViewById(R.id.fab)
fab.setOnClickListener { view ->
    Snackbar.make(view, "Here's a Snackbar", Snackbar.LENGTH_LONG)
            .setAction("Action", null)
            .show()
}

Java

FloatingActionButton fab = findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        Snackbar.make(view, "Here's a Snackbar", Snackbar.LENGTH_LONG)
                .setAction("Action", null).show();
    }
});

Więcej informacji o możliwościach przycisku typu FAB znajdziesz w dokumentacji API dla FloatingActionButton.