RelativeLayout包装中的Android TextView

时间:2011-02-17 01:06:09

标签: android textview relativelayout

我正在尝试在左侧的列中创建一个relativeLayout,其中两个按钮在右侧相邻。问题是,当第一个textView很短“即3或4个字符”时,只要文本视图比第一个textView长,它就会被包装。我不想要这个,并希望他们尽可能地一直到按钮。我知道我可能错过了一个参数或类似的东西。有人能帮助我吗?

<LinearLayout android:id="@+id/LinearLayout02" android:orientation="vertical" android:layout_height="fill_parent" android:layout_width="fill_parent">
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/RelativeLayout_class1" android:visibility="visible">


<TextView android:layout_width="wrap_content" android:text="@+id/TextView01" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:id="@+id/TextView_class1_name" android:textColor="@color/Button_Text1"></TextView>
<TextView android:layout_width="wrap_content" android:text="@+id/TextView01" android:layout_below="@+id/TextView_class1_name" android:layout_height="wrap_content" android:layout_alignLeft="@+id/TextView_class1_name" android:layout_alignRight="@+id/TextView_class1_name" android:id="@+id/TextView_class1_building" android:textColor="@color/Button_Text1">    </TextView>
<TextView android:text="@+id/TextView01" android:layout_below="@+id/TextView_class1_building" android:layout_alignLeft="@+id/TextView_class1_building" android:layout_alignRight="@+id/TextView_class1_building" android:id="@+id/TextView_class1_room" android:textColor="@color/Button_Text1" android:layout_height="wrap_content" android:width="0dip" android:layout_width="wrap_content"></TextView>
<Button android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/Button_class1_map" android:minHeight="@dimen/button_small_size" android:minWidth="@dimen/button_small_size" android:maxHeight="@dimen/button_small_size" android:maxWidth="@dimen/button_small_size" android:text="@string/text_map" android:layout_centerVertical="true"></Button>
<Button android:layout_toLeftOf="@+id/Button_class1_map" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/Button_class1_map" android:layout_alignBottom="@+id/Button_class1_map" android:id="@+id/Button_class1_edit" android:minHeight="@dimen/button_small_size" android:minWidth="@dimen/button_small_size" android:maxHeight="@dimen/button_small_size" android:maxWidth="@dimen/button_small_size" android:text="@string/text_edit" android:layout_centerVertical="true"></Button>
</RelativeLayout>
</LinearLayout>

2 个答案:

答案 0 :(得分:3)

为什么不使用表格布局?它可能更容易设计,因为您正在谈论列和行。相对问题是它会根据其他问题进行更改,如果您不希望这种情况发生,那么使用带有x行和y列的表格布局将会更加容易。

除此之外,使用表格布局允许您在特定列中进行特定的归零,或者让特定元素使用多个列。

答案 1 :(得分:1)

在创建主屏幕小部件时,我遇到了类似的事情。由于窗口小部件的选项有限,因此无法使用TableLayout。我回复了一些可以翻译成你情况的内容:

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

<LinearLayout
    android:id="@+id/RelativeLayout_class1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="right"
    android:orientation="vertical"
    android:visibility="visible" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="short" >
    </TextView>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="shrt" >
    </TextView>

    <TextView
        android:id="@+id/TextView_class1_room"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="quite a bit longer" >
    </TextView>
</LinearLayout>

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:visibility="visible" >

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="button 1" >
    </Button>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="button 2" >
    </Button>
</LinearLayout>

</LinearLayout>