LinearLayout * size元素

时间:2012-02-07 18:58:06

标签: android android-layout android-linearlayout

我有一个LinearLayout非常适合生成类似的东西:

[固定图像尺寸] [固定图像尺寸] [文本占用剩余的空间]

XML类似于:

<?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="wrap_content" >

    <ImageView
        android:id="@+id/image1"
        android:layout_width="50dp"
        android:layout_height="120dp"
        android:layout_gravity="center_vertical" />

    <ImageView
        android:id="@+id/image2"
        android:layout_width="263dp"
        android:layout_height="150dp"
        android:layout_gravity="center_vertical" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center_vertical"
        android:gravity="center_vertical"
        android:paddingRight="5dip"
        android:textColor="#ffffffff"
        android:textSize="13sp" />

</LinearLayout>

现在我要反转它,有另一个看起来像的视图:

[文字占用剩余空间] [固定图像尺寸] [固定图像尺寸]

所以我自然而然地做了一件明显的事情:

<?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="wrap_content" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_gravity="center_vertical"
        android:gravity="center_vertical"
        android:paddingRight="5dip"
        android:textColor="#ffffffff"
        android:textSize="13sp" />

    <ImageView
        android:id="@+id/image1"
        android:layout_width="50dp"
        android:layout_height="120dp"
        android:layout_gravity="center_vertical" />

    <ImageView
        android:id="@+id/image2"
        android:layout_width="263dp"
        android:layout_height="150dp"
        android:layout_gravity="center_vertical" />

</LinearLayout>

但是在这种情况下,文本只会覆盖整个宽度,因为width是fill_parent ..但是我不希望它也包含wrap_content。

有没有简单的方法可以做到这一点?

1 个答案:

答案 0 :(得分:4)

将textview1的宽度设置为0dp并添加layout_weight element = 1.