65

我想将按钮的文本向左对齐,我不知道该怎么做,请帮助我如何在 xml 文件中执行此操作。我没有找到这个属性。

4

8 回答 8

154

也许这会帮助你:

<?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>
于 2012-07-05T04:56:19.647 回答
50

你可能想要两者

    android:gravity="left|center_vertical"

然后是一点空间

    android:paddingLeft="5dp"

以防止文本碰到按钮的左边缘。

(根据您的按钮艺术调整 padding_left 的数量。)

于 2013-08-22T19:31:46.873 回答
27

android:gravity="left"

希望这会有所帮助

于 2012-07-05T03:36:56.630 回答
6
android:gravity="left|center_vertical"

它会起作用,但现在您可能需要根据您的要求添加一些填充。

        android:paddingLeft="10dp"
于 2018-07-14T22:07:09.537 回答
2

这是对我有用的上面的组合,左侧的图标和左对齐的文本与一些填充

<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" />
于 2013-09-10T23:01:30.553 回答
2

您可能需要android:gravityANDandroid:layout_gravity来将文本与“左”对齐。

于 2013-02-05T11:50:09.640 回答
1

正如其他人提到的那样,"left|center_vertical"有效,但我发现如果没有明确说明左或右,大多数属性默认为左。

因此,放置以下内容应该足以让您的文本左对齐和垂直居中:

android:gravity="center_vertical"
于 2016-06-23T20:49:22.923 回答
0

如果您必须支持许多不同的语言,最好使用startend定位文本。这样,对于从右到左 (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>
于 2021-07-12T18:04:34.377 回答