我希望自定义材料切换按钮,就像以下示例一样。我已经尝试过了,但没有成功实现这个输出。以下是我尝试过的xml代码,但不是期望的输出结果。我查看了官方文档,但对此没有帮助。如果有人知道,请帮助我。谢谢。
XML
<com.google.android.material.button.MaterialButtonToggleGroup
android:id="@+id/outdoor_toggle_buttonGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:singleSelection="true"
app:checkedButton="@+id/btn_walking"
android:layout_marginTop="@dimen/_5sdp"
android:layout_marginBottom="@dimen/_20sdp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
>
<Button
android:id="@+id/btn_walking"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/walking"
android:textColor="@color/white"
android:textAllCaps="false"
android:backgroundTint="@color/green"
style="@style/Widget.MaterialComponents.Button"
app:shapeAppearance="@style/CustomShapeAppearance"
/>
<Button
android:id="@+id/btn_running"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/running"
android:textColor="@color/black"
android:textAllCaps="false"
android:backgroundTint="@color/white"
style="@style/Widget.MaterialComponents.Button"
app:shapeAppearance="@style/CustomShapeAppearance"
/>
<Button
android:id="@+id/btn_cycling"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/cycling"
android:textColor="@color/black"
android:textAllCaps="false"
android:backgroundTint="@color/white"
style="@style/Widget.MaterialComponents.Button"
app:shapeAppearance="@style/CustomShapeAppearance"
/>
</com.google.android.material.button.MaterialButtonToggleGroup>
样式
<style name="CustomShapeAppearance">
<item name="cornerSizeTopLeft">20dp</item>
<item name="cornerSizeTopRight">20dp</item>
<item name="cornerSizeBottomLeft">20dp</item>
<item name="cornerSizeBottomRight">20dp</item>
</style>
输出