添加悬浮操作按钮

试用 Compose 方式
Jetpack Compose 是推荐用于 Android 的界面工具包。了解如何在 Compose 中添加组件。

悬浮操作按钮 (FAB) 是一种圆形按钮,用于在应用界面中触发主要操作。本文档介绍了如何向布局添加 FAB、自定义 FAB 的部分外观,以及响应按钮点按操作。

如需详细了解如何根据 Material Design 准则为您的应用设计 FAB,请参阅 Material Design FAB

一张图片,显示包含红色 FloatingActionButton 的应用屏幕
图 1. 悬浮操作按钮 (FAB)。

将悬浮操作按钮添加到布局

以下代码展示了 FloatingActionButton 在布局文件中的显示方式:

<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" />

默认情况下,FAB 由 colorAccent 属性着色,您可以使用主题的调色板进行自定义

您可以使用 XML 属性或相应的方法配置其他 FAB 属性,如下所示:

  • 悬浮操作按钮的大小,使用 app:fabSize 属性或 setSize() 方法
  • 悬浮操作按钮的涟漪颜色,使用 app:rippleColor 属性或 setRippleColor() 方法
  • 悬浮操作按钮图标,使用 android:src 属性或 setImageDrawable() 方法

响应按钮点按操作

然后,您可以应用 View.OnClickListener 来处理 FAB 点按操作。例如,以下代码会在用户点按 FAB 时显示 Snackbar

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

如需详细了解悬浮操作按钮的功能,请参阅 FloatingActionButton 的 API 参考文档。