如果我有这样的自定义ListView
项目:
<?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="50dp"
android:orientation="vertical">
<View
android:id="@+id/home_list_divider"
android:layout_width="match_parent"
android:layout_height="10dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal">
<ImageView
android:id="@+id/home_list_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/home_list_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
有没有办法禁用仅选择顶级视图home_list_divider
?因此,如果用户单击该行的该区域,则不会发生任何事情。
答案 0 :(得分:0)
将android:focusable="false"
和android:clickable="false"
添加到您的视图
<View
android:focusable="false"
android:clickable="false"
android:id="@+id/home_list_divider"
android:layout_width="match_parent"
android:layout_height="10dp"
android:background="@color/lightestGray" />
答案 1 :(得分:0)
不确定。将您的点击监听器放在下一个LinearLayout
上<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:onClick="someMethod"
android:orientation="horizontal">
<ImageView
android:id="@+id/home_list_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/home_list_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
答案 2 :(得分:0)
我最后在onClick
添加了View
并禁用了点击声音,然后在我的Activity
中将该方法实现为空白方法:
<View
android:id="@+id/home_list_divider"
android:layout_width="match_parent"
android:layout_height="10dp"
android:onClick="divider_onClick"
android:soundEffectsEnabled="false" />
空白方法:
public void divider_onClick(View v) {
}
空白方法divider_onClick
优先于ListView
onItemClickListener