0

我是 android 开发的菜鸟,我在构建布局时遇到问题。我有一个包含文本视图的相对布局和一个包含两个复选框的线性布局。我希望 textView 出现在左侧,而线性布局出现在与边缘齐平的线性布局的右侧。目前,textview 和 linearlayout 出现在彼此的顶部。任何帮助是极大的赞赏。

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingLeft="5dp"
                android:text="Rotated Shelf:           " 
                android:layout_gravity="center_vertical"/>

            <LinearLayout
                android:id="@+id/rotated"
                android:layout_width="match_parent"
                android:layout_height="32dp"                   
                android:layout_alignParentRight="true">                  

                <CheckBox
                    android:id="@+id/rotatedshelfYES"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Yes"
                    android:layout_toLeftOf="@+id/rotatedshelfNO"
                     />

                <CheckBox
                    android:id="@+id/rotatedshelfNO"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:paddingRight="75dp"
                    android:text="No"
                    android:layout_alignParentRight="true" />
            </LinearLayout>
        </RelativeLayout>
4

4 回答 4

1

像这样尝试你的textview写入linear-layout并设置android:layout_weight="" 它工作得很好

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <LinearLayout
        android:id="@+id/rotated"
        android:layout_width="match_parent"
        android:layout_height="32dp"
        android:layout_alignParentRight="true" >

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_weight=".5"
            android:paddingLeft="5dp"
            android:text="Rotated Shelf:           " />

        <CheckBox
            android:id="@+id/rotatedshelfYES"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight=".25"
            android:text="Yes" />

        <CheckBox
            android:id="@+id/rotatedshelfNO"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight=".25"
            android:text="No" />
    </LinearLayout>
</RelativeLayout>
于 2013-04-09T13:57:38.197 回答
0

LinearLayout添加android:layout_toRightOf="@+id/textView2"

于 2013-04-09T13:58:47.683 回答
0

如果您想将 TextView 的右边缘与 LinearLayout 的左边缘(即 TextView 到 LinearLayout 的左侧)对齐,您应该使用

android:layout_toLeftOf="@+id/rotated"

在您的 TextView 属性中。

于 2013-04-09T14:00:06.940 回答
0

Use you have to set android:layout_width in linear layout equal to wrap_content not match_parent since match_parent is used when we want to equal the width/height as the parent of the widget/container and wrap_content as name suggest requires space only to write the caption of view/container, no extra space required.

于 2013-04-09T14:15:37.297 回答