0

リストビューのカスタム セルを整理しようとしています。リストビューには、データを追加するための BaseAdapter があります (ここでは問題ありません)。

私の問題は、レイアウトがいつ来るかです...これがサンプルです

<?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="wrap_content"
    android:background="@drawable/mng_dir_cell"
    android:orientation="horizontal"
    android:padding="4dp" >

    <!-- IMAGE -->

    <LinearLayout
        android:id="@+id/left"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <ImageView
            android:id="@+id/img_icone"
            android:layout_width="70dp"
            android:layout_height="70dp"
            android:layout_gravity="center"
            android:background="@drawable/shadow_border"
            android:padding="12dp"
            android:scaleType="centerCrop" />

        <TextView
            android:id="@+id/annuaire_tarif_etablissement"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:singleLine="true"
            android:textColor="@android:color/darker_gray"
            android:textSize="12sp"
            android:textStyle="normal" />
    </LinearLayout>

    <!-- CENTER -->

    <LinearLayout
        android:id="@+id/center"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="4dp"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/annuaire_titre_etablissement"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="4dp"
            android:maxLength="30"
            android:singleLine="true"
            android:textColor="@android:color/black"
            android:textSize="16sp" />

        <TextView
            android:id="@+id/annuaire_categorie_etablissement"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="@android:color/darker_gray"
            android:textSize="12sp"
            android:textStyle="normal" />

        <ImageView
            android:id="@+id/annuaire_promo_etablissement"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            android:layout_marginBottom="5dp"
            android:paddingLeft="40dp"
            android:visibility="gone" />
    </LinearLayout>

    <!-- RIGHT -->

    <RelativeLayout
        android:id="@+id/right"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:layout_margin="2dp"
        android:gravity="center_vertical" >

        <TextView
            android:id="@+id/annuaire_distance_etablissement"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_toLeftOf="@+id/arrow_img"
            android:singleLine="true"
            android:textColor="@color/clr_default_complement2"
            android:textSize="12sp" />

        <ImageView
            android:id="@+id/arrow_img"
            android:layout_width="10dp"
            android:layout_height="10dp"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="4dp"
            android:layout_marginRight="2dp"
            android:src="@drawable/icone_fleche" />
    </RelativeLayout>

</LinearLayout>

レイアウトの「中心」を、他の 2 つの間の固定/比例サイズにすることはできません。

例: タイトルが長すぎると、レイアウトが画面からはみ出してしまいます。カテゴリも同様です。多すぎると右が消えます。

私はすでにToRightとToLeftで相対レイアウトを試しましたが、問題は、中心が左レイアウトのToRightであり、右レイアウトのToLeftが中心ではない必要があることです...あなたが私が何を意味するか知っていれば:(

4

1 に答える 1

1

左要素と右要素の静的な幅を指定できます。または、次のようにlayout_weightを使用します。

<LinearLayout [...] >
    <LinearLayout [...] 
          android:layout_width="70dp">
    </LinearLayout>

    <LinearLayout [...] 
          android:layout_width="0dp"
          android:layout_weight="1">
    </LinearLayout>

    <LinearLayout [...] 
          android:layout_width="10dp">
    </LinearLayout>
</LinearLayout>
于 2013-06-24T13:32:21.937 に答える