【发布时间】:2020-05-11 02:21:55
【问题描述】:
我正在尝试创建具有自定义形状的自定义 FAB。我尝试将android: background 与shapeAppearanceOverlay 和shapeAppearance 属性一起设置,但仍然没有运气。
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/edit_score_fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:shapeAppearance="@drawable/edit_score_fab"
app:shapeAppearanceOverlay="@drawable/edit_score_fab"
android:background="@drawable/edit_score_fab"/>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"
>
<size
android:height="5dp"
android:width="10dp"/>
<corners android:bottomLeftRadius="4dp" />
<solid android:color="@color/color_primary"/>
</shape>
我的结果
我想要什么
【问题讨论】:
-
不要为此使用 FloatingActionButton,如果您想设置自定义背景可绘制对象,只需使用 Button。
-
来自 Google 的 Material Components 库(不是 Jetpack)允许形状主题化。我还没有这样做,但它可能有助于定义不同的形状,将其放入样式中,然后将该样式应用于您的按钮。 github.com/material-components/material-components-android
标签: android android-button floating-action-button material-components-android material-components