0
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:minHeight="?android:attr/listPreferredItemHeight"
android:orientation="vertical"
android:paddingRight="?android:attr/scrollbarSize" >

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="6dip"
    android:layout_marginLeft="15dip"
    android:layout_marginRight="6dip"
    android:layout_marginTop="6dip"
    android:layout_weight="1" >

    <TextView
        android:id="@+android:id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:fadingEdge="horizontal"
        android:singleLine="true"
        android:text="222"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+android:id/summary"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@android:id/title"
        android:layout_below="@android:id/title"
        android:maxLines="4"
        android:text="222ssss"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="?android:attr/textColorSecondary" />
</RelativeLayout>

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="6dip"
    android:layout_marginLeft="15dip"
    android:layout_marginRight="6dip"
    android:layout_marginTop="6dip"
    android:layout_weight="1" >

    <TextView
        android:id="@+android:id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:fadingEdge="horizontal"
        android:singleLine="true"
        android:text="222"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+android:id/summary"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@android:id/title"
        android:layout_below="@android:id/title"
        android:maxLines="4"
        android:text="222ssss"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="?android:attr/textColorSecondary" />
</RelativeLayout>

<RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@color/button_background_dark_default"
            android:contentDescription="@string/image"
            android:scaleType="fitXY" />
    </RelativeLayout>

</<LinearLayout

但图像在整个屏幕上,没有文字。我想看到一个文本,并在这个文本图像下填充所有空白空间。我怎样才能做到这一点?

4

4 回答 4

2

这是你想要的?根据我的说法,您的布局可以通过一个简单的 linearLayout 来简化android:orientation="vertical"

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center_vertical"
            android:minHeight="?android:attr/listPreferredItemHeight"
            android:orientation="vertical"
            android:paddingRight="?android:attr/scrollbarSize">

<TextView
        android:id="@+id/text1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:fadingEdge="horizontal"
        android:singleLine="true"
        android:text="222"
        android:textAppearance="?android:attr/textAppearanceLarge"/>

<TextView
        android:id="@+id/summary1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:maxLines="4"
        android:text="222ssss"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="?android:attr/textColorSecondary"/>


<TextView
        android:id="@+id/title2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:fadingEdge="horizontal"
        android:singleLine="true"
        android:text="222"
        android:textAppearance="?android:attr/textAppearanceLarge"/>

<TextView
        android:id="@+id/summary2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:maxLines="4"
        android:text="222ssss"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="?android:attr/textColorSecondary"/>

<ImageView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="@color/button_background_dark_default"
        android:scaleType="fitXY"/>

</LinearLayout>

这里的诀窍是这些属性android:layout_height="0dp"android:layout_weight="1". 它会告诉 android 你希望你的图片填满所有的空白空间。

于 2013-06-07T09:38:24.313 回答
0

尝试这个 - -

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:minHeight="?android:attr/listPreferredItemHeight"
android:orientation="vertical"
android:paddingRight="?android:attr/scrollbarSize" >

<RelativeLayout
android:id="@+id/rl_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="6dip"
android:layout_marginLeft="15dip"
android:layout_marginRight="6dip"
android:layout_marginTop="6dip"
 >

<TextView
    android:id="@+android:id/title"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:ellipsize="marquee"
    android:fadingEdge="horizontal"
    android:singleLine="true"
    android:text="222"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+android:id/summary"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@android:id/title"
    android:layout_below="@android:id/title"
    android:maxLines="4"
    android:text="222ssss"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:textColor="?android:attr/textColorSecondary" />
</RelativeLayout>

<RelativeLayout
android:id="@+id/rl_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="6dip"
android:layout_marginLeft="15dip"
android:layout_marginRight="6dip"
android:layout_marginTop="6dip"

android:layout_below="@id/rl_1" >

<TextView
    android:id="@+android:id/title"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:ellipsize="marquee"
    android:fadingEdge="horizontal"
    android:singleLine="true"
    android:text="222"
    android:textAppearance="?android:attr/textAppearanceLarge" />

<TextView
    android:id="@+android:id/summary"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@android:id/title"
    android:layout_below="@android:id/title"
    android:maxLines="4"
    android:text="222ssss"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:textColor="?android:attr/textColorSecondary" />
</RelativeLayout>

<RelativeLayout
android:id="@+id/img"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
android:layout_below="@id/rl_2">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/button_background_dark_default"
        android:contentDescription="@string/image"
        android:scaleType="fitXY" />
</RelativeLayout>

</RelativeLayout>
于 2013-06-07T09:01:40.447 回答
0

将您的持有人更改ImageViewLinearLayout

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/button_background_dark_default"
        android:contentDescription="@string/image"
        android:scaleType="fitXY" />
</LinearLayout>

RelativeLayout的扩展是因为它的match_parent内容。

于 2013-06-07T09:03:00.640 回答
0

你绝对不应该像那样使用嵌套的线性/相对 la yout。

无论如何,尝试在图像周围放置相对布局,例如上面或 toleftof 等

编辑:我没有看到你的主要布局是线性的,那么你必须在每个内部布局上使用 weight=1,这样它们就不会相互优先。但是对一个元素使用相对布局只会让你的应用变慢

于 2013-06-07T08:59:11.893 回答