我正在为 Android 创建计算器。在我的layout.xml 文件中,我有
<LinearLayout>
和 <Button>
。我想要一个带有单符号文本的按钮,该按钮必须水平和垂直居中。我已经成功地将大多数文本符号(箭头除外)居中,其 Unicode 为 \u2190
和 '\u2192'。是否可以使用 paddings 或 android:gravity
来解决这个问题?或者有更复杂的解决方案?
我尝试了
android:textSize
、'android:paddingBottom' 和 'android:paddingTop' 的几种不同值的组合。我希望带有某些参数的简单“android:paddingBottom”应该对我有帮助,但如果我指定的值大于10dp
,文本开始向上移动,而不是向下移动。
这是我的
layout.xml
:
<Button
style="@style/ExtraButtonStyle"
android:text="\u2190"
android:textSize="44dp"
android:paddingBottom="4dp"
android:id="@+id/left_arrow">
</Button>
这是我的
styles.xml
文件,其中包含应用的样式:
<resources>
<style name="MyButtonStyle">
<item name="android:layout_width">60dp</item>
<item name="android:layout_height">60dp</item>
<item name="android:textColor">@color/white</item>
<item name="android:layout_marginLeft">12dp</item>
<item name="android:layout_marginRight">12dp</item>
<item name="android:layout_marginTop">5dp</item>
<item name="android:layout_marginBottom">5dp</item>
<item name="android:textSize">30dp</item>
<item name="android:textAllCaps">false</item>
</style>
<style name="ExtraButtonStyle" parent="MyButtonStyle">
<item name="android:backgroundTint">@color/grey</item>
</style>
</resources>