Um botão de ação flutuante (FAB, na sigla em inglês) é um botão circular que aciona a ação principal na IU do seu app. Este documento mostra como adicionar um FAB ao seu layout. personalizar parte da aparência e responder aos toques no botão.
Para saber mais sobre como projetar um FAB para o app de acordo com a documentação do Material Design, diretrizes de design, consulte Material Design FAB (link em inglês) ,
![Uma imagem mostrando uma tela de app com um floatActionButton vermelho](https://developer.android.google.cn/static/training/material/images/fab.png?authuser=9&hl=pt-br)
Adicionar o botão de ação flutuante ao layout
O código a seguir mostra como
FloatingActionButton
aparece no arquivo de layout:
<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" />
Por padrão, um FAB é colorido pelo atributo colorAccent
, que você pode
personalize com a cor do tema
paleta.
É possível configurar outras propriedades do FAB usando atributos XML ou correspondentes métodos, como os seguintes:
- O tamanho do FAB, usando o atributo
app:fabSize
ou osetSize()
método - A cor de ondulação do FAB, usando o atributo
app:rippleColor
ou osetRippleColor()
método - O ícone do FAB, usando o atributo
android:src
ou osetImageDrawable()
método
Responder aos toques no botão
Você pode então aplicar uma
View.OnClickListener
para
os toques no FAB. Por exemplo, o código a seguir mostra
Snackbar
quando
o usuário toca no 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(); } });
Para mais informações sobre os recursos do FAB, consulte a Referência da API
para o
FloatingActionButton