0

ListView の右側に小さな画像を表示したいのですが、TextViews を試してみると、「アプリ」から押し出されて表示されなくなります。重力に取り組んでみましたが、うまくいかないようです。私が望むように配置することは可能ですか、それとも RelativeLauoyt で行う必要がありますか? ありがとう

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

<ImageView
    android:id="@+id/img"
    android:layout_width="80dip"
    android:layout_height="80dip" 
    android:layout_marginLeft="5dp" 
    android:layout_marginTop="5dp" 
    android:layout_marginBottom="5dp" 
    android:scaleType="centerCrop"/>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:paddingLeft="10dp"
    android:layout_width="fill_parent"
    android:layout_height="80dip">
    <TextView
        android:layout_width="fill_parent"
        android:id="@+id/title"
        android:layout_height="wrap_content"
        android:textStyle="bold"
        android:textColor="#004b23"
        android:textSize="16sp"
        android:maxLines="2"
        android:ellipsize="end"
        android:layout_marginRight="30sp"/>
    <TextView
        android:layout_width="fill_parent"
        android:id="@+id/detail"
        android:textColor="#cfae78"
        android:layout_height="wrap_content"/>
    <TextView
        android:layout_width="fill_parent"
        android:textColor="#cfae78"
        android:id="@+id/footer"
        android:layout_height="wrap_content"/>
</LinearLayout>

これは、ListView の右側に配置したい ImageView です。

<ImageView
    android:id="@drawable/day"
    android:layout_width="40dip"
    android:layout_height="40dip"
    android:layout_marginBottom="5dp"
    android:layout_marginRight="5dp"
    android:layout_marginTop="5dp"
    android:scaleType="centerCrop" 
    android:layout_gravity="right|center_vertical"/>

    </LinearLayout>
4

2 に答える 2

0

私は常に RelativeLayout を使用することをお勧めします (ただし、これは個人的な好みです)。

RelativeLayout を使用すると、次のことが必要になります。

Listview: (親を左に揃え、ImageView の左に) ImageView: (親を右に揃え、幅: コンテンツをラップ)

それはあなたが望むものを達成するはずです。

于 2012-05-13T19:03:38.757 に答える
0

「内側」の線形レイアウトには属性layout_width="fill_parent"があり、これにより、内側の線形レイアウトが残りの水平スペースをすべて占有します。機能させるには、線形レイアウトの layout_width 属性を 150dip などの小さい値に変更します。

あれは、layout_width="150dip"

また、画像を押し出すのはtextViewではなく、線形レイアウトのlayout_width属性です

PS また、相対レイアウトを使用することをお勧めします。

于 2012-05-13T19:14:40.583 に答える