【发布时间】:2021-10-08 22:19:05
【问题描述】:
没想到会这么难。我想制作一个按钮,就像普通按钮一样,但我希望它显示一个图标(SVG)而不是文本。
我试过了:
- 设置
icon在按钮的左边缘绘制一个小图标 - 使用
ImageButton代替Button得到scaleType=fitCenter,但看起来不再像按钮(它只是一个灰色矩形) - 设置
background会扭曲图标,因为它不会保持纵横比并且它看起来不再像按钮了 - 将表情符号用作
text可以,但我只能使用可用的表情符号范围
【问题讨论】:
-
您可以尝试使用the Material Design button documentation 中的“实现仅图标切换按钮”说明进行一些实验。虽然这些信息集中在切换按钮上——这可能不是你想要的——但你可能会从它们如何设置各个按钮的样式中获得一些想法。
-
不幸的是,我根本不懂样式方面的东西。这可能与
ImageButton是ImageView的子类而不是Button的事实有关。Button的文档实际上谈到了“buttonStyle”和“系统的默认按钮背景”,但我不知道它们是如何结合在一起的。 -
然后
ImageButton的文档又说“默认情况下,ImageButton看起来像普通的Button”,这显然是错误的,因为任何人都可以通过将按钮和 ImageButton 拖入来验证布局。 -
关于那种奇怪的外观,尽管文档说我已经打开了another question。
标签: android