Android-ListView在项目的节标题中禁用按下的效果

提问

我有一个带有几个元素和节头的listView.
所有项目都有节标题,但仅在必要时显示.这是可能项目的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”进行多种操作,但没有任何效果.你有什么主意吗 ?
感谢您的回复?

最佳答案

因此,我找到了解决方案.这很简单,但是我不确定为什么:

我只在部分标题为true的位置插入了clickable参数:

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>

有人可以解释这个解决方案吗?

评论