【发布时间】:2021-02-18 05:06:36
【问题描述】:
我使用 MaterialButtonToggleGroup 创建了选择器按钮。
我想在 stroke 和 drawable 之间添加填充。
这就是我想要的:
正如您在上图中看到的那样,笔划和可绘制选择器之间有填充。
这是 XML 代码:
<com.google.android.material.button.MaterialButtonToggleGroup
android:id="@+id/toggleContent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="visible"
app:checkedButton="@id/btnOutline"
android:paddingVertical="4dp"
app:selectionRequired="true"
app:singleSelection="true">
<com.google.android.material.button.MaterialButton
android:id="@+id/btnOutline"
style="@style/Widget.MaterialComponents.Button.OutlinedButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@drawable/button_selector"
android:text="@string/outline"
android:textSize="15sp"
android:drawablePadding="2dp"
android:textAllCaps="false"
android:textColor="@drawable/selector_color"
app:strokeColor="@color/selector_btn_toggle" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btnMain"
style="@style/Widget.MaterialComponents.Button.OutlinedButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:backgroundTint="@drawable/button_selector"
android:text="@string/main"
android:textAllCaps="false"
android:drawablePadding="2dp"
android:textSize="15sp"
android:textColor="@drawable/selector_color"
app:strokeColor="@color/selector_btn_toggle" />
</com.google.android.material.button.MaterialButtonToggleGroup>
正如您在代码中看到的那样,我正在使用 android:drawablePadding="2dp",但这不起作用。 我正在使用 backgroundTint 来设置可绘制的选择器。
可绘制的button_selector代码:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/selector_btn_toggle" android:state_checked="true"/>
</selector>
【问题讨论】:
-
不使用颜色而是使用背景创建图层列表here
-
你能发布按钮选择器 xml 吗?
-
@rajan.kali 它已经存在“可绘制的 button_selector 代码:”。
-
在大纲按钮中添加marginTop、marginStart、marginBottom,在2dp的主按钮中添加marginTop、marginEnd、marginBottom,并且materialbutton组将具有轮廓颜色背景
标签: android xml material-design