我有一个带有几个元素和节头的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>
Run Code Online (Sandbox Code Playgroud)
我尝试使用“ android:clickable”和“ android:descendantFocusability”进行多种操作,但没有任何效果。你有什么主意吗 ?感谢您的回复?
因此,我找到了解决方案。这很简单,但是我不确定为什么:
我只在部分标题为true的位置插入了clickable参数:
android:clickable="true"
Run Code Online (Sandbox Code Playgroud)
这是所有项目:
<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>
Run Code Online (Sandbox Code Playgroud)
有人可以解释这个解决方案吗?
| 归档时间: |
|
| 查看次数: |
884 次 |
| 最近记录: |