0

我在布局上排列元素,但如果我使用线性布局,所有内容都沿左侧排列。如果我将gravity一些元素设置为"center",例如,一些文本,那么在手机上,它看起来还可以。但是如果是一个垫子,那么整个视图都在左侧,而在右侧留下了很大的区域。

那么如何在任何设备上使视图居中呢?

第二个问题是:如果我将文本设置为更长,那么一些单词会消失(因为它们超出了布局)。如有必要,我怎样才能使单词位于多行的中心,而不是仅是一条非常长的行和视图之外的某些部分?

问题布局.png

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:background="#FFFFFF"
    android:layout_gravity="center">

    <TextView
        android:id="@+id/text"
        android:layout_column="0"
        android:layout_columnSpan="2"
        android:layout_gravity="right"
        android:layout_row="0"
        android:layout_rowSpan="3"
        android:ems="10" />

    <RadioGroup
        android:id="@+id/first_radiogroup"
        android:layout_column="0"
        android:layout_columnSpan="3"
        android:layout_gravity="bottom"
        android:layout_row="1"
        android:layout_rowSpan="3" >

        <RadioButton
            android:id="@+id/1_1"
            android:text="1_1" />

        <RadioButton
            android:id="@+id/1_2"
            android:text="1_2" />

        <RadioButton
            android:id="@+id/1_3"
            android:text="1_3" />
    </RadioGroup>

    <TextView
        android:id="@+id/firsttext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="2"
        android:layout_row="2"
        android:shadowColor="#000000"
        android:shadowDx="1"
        android:shadowDy="1"
        android:shadowRadius="1.5"
        android:text="please choose from the below:"
        android:textColor="#000000"
        android:textSize="40px"
        android:textStyle="normal"
        android:typeface="serif" 
        android:gravity="center"/>

    <RadioGroup
        android:id="@+id/secon_radiogroup"
        android:layout_column="0"
        android:layout_gravity="bottom"
        android:layout_row="3"
        android:layout_rowSpan="3" >

        <RadioButton
            android:id="@+id/2_1"
            android:text="2_1" />

        <RadioButton
            android:id="@+id/2_2"
            android:text="2_2" />

        <RadioButton
            android:id="@+id/2_3"
            android:text="2_3" />
    </RadioGroup>

    <TextView
        android:id="@+id/secondtext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="1"
        android:layout_columnSpan="2"
        android:layout_row="5"
        android:shadowColor="#000000"
        android:shadowDx="1"
        android:shadowDy="1"
        android:shadowRadius="1.5"
        android:text="please choose from the below:"
        android:textColor="#000000"
        android:textSize="40px"
        android:textStyle="normal"
        android:typeface="serif" />

    <Button
        android:id="@+id/final"
        android:layout_column="2"
        android:layout_row="6"
        android:text="final" />

    <Space
        android:layout_width="1dp"
        android:layout_height="21dp"
        android:layout_column="0"
        android:layout_row="0" />

    <Space
        android:layout_width="1dp"
        android:layout_height="20dp"
        android:layout_column="0"
        android:layout_row="4" />

    <Space
        android:layout_width="1dp"
        android:layout_height="174dp"
        android:layout_column="0"
        android:layout_gravity="fill_horizontal"
        android:layout_row="5" />

    <Space
        android:layout_width="1dp"
        android:layout_height="70dp"
        android:layout_column="0"
        android:layout_row="6" />

    <Space
        android:layout_width="213dp"
        android:layout_height="1dp"
        android:layout_column="2"
        android:layout_row="0" />

    <Space
        android:layout_width="104dp"
        android:layout_height="1dp"
        android:layout_column="0"
        android:layout_row="0" />

    <Space
        android:layout_width="3dp"
        android:layout_height="1dp"
        android:layout_column="1"
        android:layout_row="0" />

    <Space
        android:layout_width="1dp"
        android:layout_height="26dp"
        android:layout_column="0"
        android:layout_row="1" />

    <Space
        android:layout_width="1dp"
        android:layout_height="166dp"
        android:layout_column="0"
        android:layout_row="2" />

</GridLayout>
4

1 回答 1

1

您应该为不同的屏幕尺寸制作不同的布局文件。下面的链接可以帮助你

http://developer.android.com/training/basics/supporting-devices/index.html

于 2012-08-13T15:27:10.757 回答