首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Android中制作带有图标的按钮?

如何在Android中制作带有图标的按钮?
EN

Stack Overflow用户
提问于 2021-10-08 22:19:05
回答 1查看 68关注 0票数 0

我没想到这会这么难。我想做一个按钮,像一个普通的按钮,但我希望它显示一个图标(SVG)而不是文本。

我试过:

  • 设置icon使用ImageButton而不是Button
  • 按钮左侧绘制一个小图标,但它不再像按钮了(它只是一个灰色的

background扭曲图标,因为它没有保持高宽比,并且它不再像按钮那样使用表情符号text,但限制在可用的表情符号H 214F 215>F 215

EN

回答 1

Stack Overflow用户

发布于 2021-10-08 22:50:01

您可以选择以下选项:

  • 设置图标在按钮

的左侧绘制一个小图标。

然后:

  • To控制大小:使用app:iconSize属性.

  • To控制right

的水平位移

代码语言:javascript
运行
复制
1. Adjust negative padding to `app:iconPadding`
代码语言:javascript
运行
复制
2. Adjust positive padding to `android:paddingStart`

要注意调整到高值,可以将图标与按钮文本相交。

以下是一个示例:

代码语言:javascript
运行
复制
<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属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69502249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档