3

いくつかの要素とセクション ヘッダーを持つ listView があります。すべてのアイテムにはセクション ヘッダーがありますが、これは必要な場合にのみ表示します。ここでは、may item の xml コード:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/list_selector_transparent"
android:paddingLeft="@dimen/padding_small"
android:paddingRight="@dimen/padding_small" >

<TextView
    android:id="@+id/item_training_section_header"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_marginTop="@dimen/item_training_section_header_margin_top"
    android:background="@drawable/list_selector_transparent"
    android:paddingLeft="@dimen/padding_small"
    android:textColor="@color/item_training_section_header_color"
    android:textSize="@dimen/item_training_section_header_text_size"
    android:textStyle="bold"
    android:visibility="visible" />

<RelativeLayout
    android:id="@+id/item_training_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/item_training_section_header"
    android:background="@drawable/list_selector"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/item_training_logo"
        android:layout_width="@dimen/item_training_image_width"
        android:layout_height="@dimen/item_training_image_height"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:layout_margin="@dimen/margin_small"
        android:contentDescription="@string/image_description" />

    <TextView
        android:id="@+id/item_training_title_formation"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_margin="@dimen/margin_small"
        android:layout_toRightOf="@id/item_training_logo"
        android:textColor="@color/item_training_title_formation_color"
        android:textSize="@dimen/item_training_title_formation_text_size" />
</RelativeLayout>

「android:clickable」と「android:descendantFocusability」でいくつか試してみましたが、何も機能しません。何か考えはありますか?ご回答ありがとうございます。

4

1 に答える 1

5

だから、私は解決策を見つけました。それは非常に単純でしたが、理由がわかりません:

true my section header にクリック可能なパラメータを挿入するだけです:

android:clickable="true"

ここにすべてのアイテム:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="@dimen/padding_small"
android:paddingRight="@dimen/padding_small" >

<TextView
    android:id="@+id/item_training_section_header"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:clickable="true"
    android:layout_marginTop="@dimen/item_training_section_header_margin_top"
    android:paddingLeft="@dimen/padding_small"
    android:textColor="@color/item_training_section_header_color"
    android:textSize="@dimen/item_training_section_header_text_size"
    android:textStyle="bold"
    android:visibility="visible" />

<RelativeLayout
    android:id="@+id/item_training_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/item_training_section_header"
    android:background="@drawable/list_selector"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/item_training_logo"
        android:layout_width="@dimen/item_training_image_width"
        android:layout_height="@dimen/item_training_image_height"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:layout_margin="@dimen/margin_small"
        android:contentDescription="@string/image_description" />

    <TextView
        android:id="@+id/item_training_title_formation"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_margin="@dimen/margin_small"
        android:layout_toRightOf="@id/item_training_logo"
        android:textColor="@color/item_training_title_formation_color"
        android:textSize="@dimen/item_training_title_formation_text_size" />
</RelativeLayout>

誰でもこの解決策を説明できますか?

于 2012-12-14T16:42:33.507 に答える