RadioGroup / Button对齐

时间:2013-07-23 16:38:51

标签: android radio-button android-xml radio-group

我正在尝试使用单选按钮创建一个应用程序,向下列出我已完成的操作。但我希望它们位于页面的中心,屏幕尺寸与按钮全部对齐。我已经尝试了,但它不在所有设备的中心,我尝试更改它,但然后按钮没有对齐。任何帮助都会很棒。感谢。

代码

     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/backgroundp"
android:orientation="vertical"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:paddingTop="20dip" >

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:paddingBottom="10dip"
    android:text="@string/question1"
    android:textSize="30sp" />

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:paddingBottom="10dip"
    android:src="@drawable/square" />

<RadioGroup
    android:id="@+id/q1_group"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:orientation="vertical"
    android:paddingBottom="30dip"
    android:paddingLeft="60dip" >

    <RadioButton
        android:id="@+id/q1a1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:text="@string/shapetr"
        android:textSize="25sp" />

    <RadioButton
        android:id="@+id/q1a2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:text="@string/shapeci"
        android:textSize="25sp" />

    <RadioButton
        android:id="@+id/q1a3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:text="@string/shapesq"
        android:textSize="25sp" />
</RadioGroup>

2 个答案:

答案 0 :(得分:0)

使用父布局的layout_gravity

答案 1 :(得分:0)

看看这是否是你要找的东西

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:paddingTop="20dip" >

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:paddingBottom="10dip"
    android:text="question1"
    android:textSize="30sp"
    android:layout_above="@id/ivId" />

<ImageView
    android:id="@+id/ivId"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:paddingBottom="10dip"
    android:layout_above="@id/q1_group" />

<RadioGroup
    android:id="@+id/q1_group"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_centerInParent="true"
    android:paddingBottom="30dip"
    android:paddingLeft="60dip" >

    <RadioButton
        android:id="@+id/q1a1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:text="shapetr"
        android:textSize="25sp" />

    <RadioButton
        android:id="@+id/q1a2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:text="shapeci"
        android:textSize="25sp" />

    <RadioButton
        android:id="@+id/q1a3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:text="shapesq"
        android:textSize="25sp" />
</RadioGroup>

      </RelativeLayout>

我将父layout更改为RelativeLayout。这样,RadioGroup可以以

为中心
android:layout_centerInParent="true"

然后我将另一个Views放在

上面
android:layout_above="@id/idOfViewBelow"

这意味着我必须向ImageView id提供所有Views真正应该拥有的大部分时间