将布局元素分组到另一个组或元素

时间:2014-07-03 09:56:47

标签: android android-layout

我正在尝试在另外两个文本视图的左侧设置textview。我认为我可能会使用某种容器将它们分开,然后将第一个textview设置在包含其他两个textview的容器的左侧。但我找不到任何有用的东西。

我尝试使用relativelayout将它们组合在一起,但它似乎只是填满整个屏幕宽度,并使第一个文本视图位于屏幕外的左侧。

如果我将包含另外两个文本视图的relativelayout设置在第一个textview的右边,它有点工作,但是如果第一个textview中的文本太长,它将与容器及其内容重叠,我不知道不想要它。

在下面的示例中,“textview1”将包含一个较长的字符串,可能需要1-3行。 其他两个只包含几个字符,但重要的是它们是可见的。

起初我在textview2的左边有textview1,但有时textview3会比textview2宽,这会导致问题。

任何想法如何解决这个问题?

请参阅以下链接中的图片,了解它应该如何与现在看起来如何按照要求展示。

http://i.stack.imgur.com/1d5o4.png

<RelativeLayout
    android:id="@+id/RelativeLayout01"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">

    <TextView
        android:id="@+id/textview1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="0dp"
        android:layout_toLeftOf="@+id/RelativeLayout02"
        android:textSize="16sp"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:textColor="#111"
        android:background="#FF9999">
    </TextView>

    <RelativeLayout
        android:id="@+id/RelativeLayout02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:gravity="right">

        <TextView
            android:id="@+id/textview2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginTop="0dp"
            android:layout_marginLeft="0dp"
            android:gravity="right"
            android:textSize="16sp"
            android:paddingLeft="10dp"
            android:paddingRight="10dp"
            android:textColor="#111"
            android:background="#99FF99">
        </TextView>

        <TextView
            android:id="@+id/textview3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_below="@+id/textview2"
            android:layout_marginTop="10dp"
            android:layout_marginLeft="0dp"
            android:textSize="16sp"
            android:paddingLeft="10dp"
            android:paddingRight="10dp"
            android:textColor="#111"
            android:background="#9999FF">
        </TextView>
    </RelativeLayout>
</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

Give the width and height for Textview1 

for example


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <RelativeLayout
        android:id="@+id/textview01_layout"
        android:layout_width="240dp"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/textview1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="0dp"
            android:background="#FF9999"
            android:paddingLeft="10dp"
            android:paddingRight="10dp"
            android:text="parthi"
            android:textColor="#111"
            android:textSize="16sp" >
        </TextView>
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/RelativeLayout02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:gravity="right" >

        <TextView
            android:id="@+id/textview2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginLeft="0dp"
            android:layout_marginTop="0dp"
            android:background="#99FF99"
            android:gravity="right"
            android:paddingLeft="10dp"
            android:paddingRight="10dp"
            android:text="parthi"
            android:textColor="#111"
            android:textSize="16sp" >
        </TextView>

        <TextView
            android:id="@+id/textview3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_below="@+id/textview2"
            android:layout_marginLeft="0dp"
            android:layout_marginTop="10dp"
            android:background="#9999FF"
            android:paddingLeft="10dp"
            android:paddingRight="10dp"
            android:text="parthi"
            android:textColor="#111"
            android:textSize="16sp" >
        </TextView>
    </RelativeLayout>

    <LinearLayout>
    </LinearLayout>

答案 1 :(得分:0)

这是布局,只是玩高度。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >


    <TextView android:layout_width="0dp"
        android:layout_height="50dp"
        android:layout_weight="0.8"
        android:background="#ff0000"/>


    <LinearLayout 
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:orientation="vertical"
     android:layout_weight="0.2"
     >

    <TextView android:layout_width="match_parent"
        android:layout_height="wrap_content"

        android:background="#00ff00"/>

    <TextView android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#0000ff"/>

</LinearLayout>
</LinearLayout>

这是输出

Image

相关问题