我没想到这会这么难。我想做一个按钮,像一个普通的按钮,但我希望它显示一个图标(SVG)而不是文本。
我试过:
icon
使用ImageButton
而不是Button
在background
扭曲图标,因为它没有保持高宽比,并且它不再像按钮那样使用表情符号text
,但限制在可用的表情符号H 214F 215
>F 215
发布于 2021-10-08 22:50:01
您可以选择以下选项:
的左侧绘制一个小图标。
然后:
app:iconSize
属性.的水平位移
1. Adjust negative padding to `app:iconPadding`
2. Adjust positive padding to `android:paddingStart`
要注意调整到高值,可以将图标与按钮文本相交。
以下是一个示例:
<Button
android:layout_width="300dp"
android:layout_height="wrap_content"
android:paddingStart="50dp"
android:paddingLeft="50dp"
android:text="Alert\nReceived"
android:textSize="18sp"
app:icon="@drawable/alarm"
app:iconPadding="-20dp"
app:iconSize="70dp" />
更新
因此不清楚如何使图标居中。顺便说一句,没有文字,我想要一个按钮,只有一个图标。-
因为它是一个只有图标的非文本按钮:
图标可以通过使用app:iconGravity="textEnd"
来居中,它将图标对齐到文本的末尾(默认情况下在中间)。这也可以与textStart
一起使用,因为已经没有文本了。
还有一个默认的图标填充,您也可以删除,因此也可以设置app:iconPadding="0dp"
,并删除android:paddingStart
属性。
https://stackoverflow.com/questions/69502249
复制相似问题