文字未在中心对齐

时间:2014-01-14 10:26:25

标签: android xml button

我想在中心的按钮中设置文字,但它不起作用。有没有其他方法来编写代码。我希望上半屏空,下半部分有4个按钮。

代码 -

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/back"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:layout_weight="4" >

    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:layout_weight="4" >

    <Button
            android:id="@+id/intro"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:background="@null"
            android:layout_gravity="center"
            android:layout_weight="1"
            android:text="Introduction" />

    <Button
            android:id="@+id/typ"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:background="@null"
            android:layout_weight="1"
            android:text="Types" />

    <Button
            android:id="@+id/app"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_weight="1"
            android:background="@null"
            android:text="Application" />

    <Button
            android:id="@+id/ben"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:gravity="center_vertical|center_horizontal"
            android:background="@null"
            android:layout_weight="1"
            android:text="Benefits" />

    </LinearLayout>

</LinearLayout>

图像 -

enter image description here

2 个答案:

答案 0 :(得分:1)

由于这些按钮的宽度设置为match_parent,设置layout_gravity不会产生任何影响。您需要像这样设置gravity

<Button
        android:id="@+id/intro"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@null"
        android:gravity="center"
        android:layout_weight="1"
        android:text="Introduction" />

<Button
        android:id="@+id/typ"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:background="@null"
        android:layout_weight="1"
        android:text="Types" />

<Button
        android:id="@+id/app"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_weight="1"
        android:background="@null"
        android:text="Application" />

<Button
        android:id="@+id/ben"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:background="@null"
        android:layout_weight="1"
        android:text="Benefits" />

并且还尝试运行您的应用程序并测试有时IDE会以这种方式显示文本,但它实际上是居中的。

答案 1 :(得分:1)

这是我的食谱:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/back"
    android:orientation="vertical"
    >
    <View
        android:id="@+id/top_space_waster"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:background="@null"
        android:gravity="center"
        android:layout_weight="4"
    />
    <Button
        android:id="@+id/intro"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:background="@null"
        android:gravity="center"
        android:layout_weight="1"
        android:text="Introduction"
    />
    <Button
        android:id="@+id/typ"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:gravity="center"
        android:background="@null"
        android:layout_weight="1"
        android:text="Types"
    />
    <Button
        android:id="@+id/app"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:gravity="center"
        android:layout_weight="1"
        android:background="@null"
        android:text="Application"
    />
    <Button
        android:id="@+id/ben"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:gravity="center"
        android:background="@null"
        android:layout_weight="1"
        android:text="Benefits"
    />
</LinearLayout>

注意权重工作所需的layout_height="0dp" 另请注意,占用屏幕上半部分的空间浪费View