问题描述
当我使按钮宽度与父项匹配时,可绘制的开始位置和文本距离太远,它们似乎不尊重android:drawablePadding
设置.我也尝试了android:gravity="center"
和android:textAlignment="center"
无济于事.设置一些paddingStart/End
会间接影响它们彼此之间的距离.看到下面的结果:
when I make a button width match parent, the drawable start and text are too far away, and they don't seem to respect android:drawablePadding
setting. I tried as well with android:gravity="center"
and android:textAlignment="center"
to no avail. Setting some paddingStart/End
affect indirectly how close they are to each other.See the result below:
按钮的代码:
<Button
style="@style/ActionButton.Primary.Light.Large"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_margin="0dp"
android:drawableLeft="@drawable/ic_filter_and_sort_white"
android:drawablePadding="0dp"
android:textAlignment="center"
android:text="Apply filters"
app:layout_constraintBottom_toTopOf="@id/someViewBelow"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/someViewAbove" />
样式定义background
,textColor
,margins
,minDimensions
,paddings
,radiuses
,textSize
,textAllCaps
,radiuses
,stateListAnimator
,fontPath
-所以没有什么会影响我想要的东西.
the style defines background
, textColor
, margins
, minDimensions
, paddings
, radiuses
, textSize
, textAllCaps
, radiuses
, stateListAnimator
, fontPath
- so nothing that should affect what I'm looking for.
推荐答案
使用 MaterialButton
和app:iconGravity="start"
,并使用 app:iconPadding
属性定义图标和文本之间的填充.
Use the MaterialButton
with app:iconGravity="start"
and defining the padding between the icon and the text with the app:iconPadding
attribute.
类似的东西:
<com.google.android.material.button.MaterialButton
style="@style/Widget.MaterialComponents.Button.Icon"
app:icon="@drawable/...."
app:iconGravity="start"
app:iconPadding="..."
此值可以为负.
否则,您可以使用 app:iconGravity="textStart"
.
这是使用start
和textStart
作为iconGravity
的区别.
Otherwise you can use app:iconGravity="textStart"
.
Here the difference of using start
and textStart
as iconGravity
.
这篇关于在按钮上,居中时文本和可绘制对象距离太远的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!