我想将按钮的文本左对齐,但我不知道如何在xml文件中实现。请告诉我怎么做。我没有找到相关属性。
也许这会对你有所帮助:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left|center_vertical"
android:text="Button" />
</LinearLayout>
|center_vertical
这一部分,谢谢 @M-Mohsin-Naeem - Carl Andersoncenter_vertical
可以自动将文本垂直居中对齐,但我需要将文本右对齐,因此使用 center_vertical|right
可以满足我的需求。我并不知道可以使用管道符来实现,非常感谢! - Exel Gamboa你可能想要两个都拥有
android:gravity="left|center_vertical"
然后再留出一点空间
android:paddingLeft="5dp"
为了避免文字与按钮左侧边缘重叠,请根据您的按钮样式适当调整 padding_left 的数量。
android:gravity="left"
希望这可以帮到您。
gravity
用于将文本对齐到按钮内部,layout_gravity
用于将按钮对齐到父容器。 - Sieryuuandroid:gravity="left|center_vertical"
这会起作用,但是现在你可能需要根据需求添加一些左边距。
android:paddingLeft="10dp"
android:gravity
和android:layout_gravity
来将文本对齐到“左侧”。这是我用过的一种组合,左边是图标,右边是文本,文本左对齐并带有一些填充。
<Button
android:id="@+id/butt_labs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableLeft="@drawable/dt_labjob"
android:paddingLeft="10dip"
android:gravity="left|center_vertical"
android:text="@string/l_labs" />
"left|center_vertical"
是有效的,但我发现如果没有明确指定左对齐或右对齐,大多数属性都会默认为左对齐。因此,只需放置以下内容即可使文本左对齐并垂直居中:android:gravity="center_vertical"
start
或end
来定位文本。这样,在从右到左(RTL)的语言中,它仍然可以正常工作。
示例:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="start|center_vertical"
android:text="Button" />
</LinearLayout>