gpt4 book ai didi

android - 新建 Material 库 : Center icon, 上面文字里面的按钮

转载 作者:行者123 更新时间:2023-12-04 23:51:59 26 4
gpt4 key购买 nike

我有这个按钮,我想让图标居中,但它也应该在文本上方。

enter image description here

问题是,有一个选项可以设置图标的重力,它是 app:iconGravity 但它只有两个选项,而且没有一个是居中的。如果没有文本,将选项设置为 textStart 会将图标移动到中心,但我希望图标位于中心并且也在文本上方。

这是当前代码:

<com.google.android.material.button.MaterialButton
android:id="@+id/payButton"
style="@style/Widget.MaterialComponents.Button.Icon"
android:layout_width="0dp"
android:layout_height="96dp"
android:layout_weight="1"
android:fontFamily="@font/montserrat_regular"
android:text="@string/pay"
android:textColor="?attr/colorPrimary"
app:backgroundTint="@android:color/white"
app:icon="@drawable/ic_pay_black_24dp"
app:iconGravity="textStart"
app:iconSize="32dp"
app:iconTint="@color/colorPrimary" />

最佳答案

他们似乎不认为这是一个好主意/设计,但他们的设计师同意在未来的版本中添加该功能。

这是在他们的 repo 协议(protocol)中围绕这个主题的请求/讨论: https://github.com/material-components/material-components-android/issues/671

目前,我发现的唯一可能性是:

  • 使用 android:drawableTop 而不是 app:icon: 可定制性差
  • 创建您自己的自定义 View 或布局,并将其包含在您需要的地方

我刚刚提交了一个 PR 来添加这个功能,因为他们似乎同意它应该支持 top gravity。


更新 (2021-02-17)

它现在应该在 Material 1.3.0 上可用通过使用以下选项之一:app:iconGravity="top"app:iconGravity="textTop"

关于android - 新建 Material 库 : Center icon, 上面文字里面的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54501440/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com