我有简单的列表视图,列表项由以下布局定义:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/list_item_selector" >
<TextView
android:id="@+id/menuItemTextView"
android:clickable="false"
android:focusable="false"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="#00000000"
android:padding="20dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/blue"
android:textIsSelectable="true" />
<ImageView
android:id="@+id/arrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:paddingRight="10dp"
android:src="@drawable/arrow" />
> </RelativeLayout>
点击TextView
后,listView.onItemClickListener
未被调用。 Android 4上出现问题.Android 2.x没问题。是否有任何技巧可以将事件从TextView
传递到ListView
而不在TextView上定义onClickListner
?
答案 0 :(得分:0)
在您的主要活动中,只需将listview视为可聚焦的真实。这对我有用。如果您使用的是自定义列表视图,焦点将传递给其子节点,而不是列表,以便将焦点重新放回listview使用 listView.focusable(真); 而textview的其他内容只是将焦点设置为假。
答案 1 :(得分:0)
这是android:textIsSelectable =“true”属性。不要盲目跟随lint提示。
答案 2 :(得分:0)
android:inputType="textMultiLine"
也可能导致此问题。如果您已在TextView
xml中包含该属性,请尝试将其删除。