为什么android GridView item里面的button不能点击?
Why android GridView item cannot click when button inside?
GridView
onItemClick 不工作。Button
OnClickListener 工作。
当我从中删除按钮时,GridView
onItemClick 起作用。
任何解决方案请帮助我。
<?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="wrap_content"
android:background="@android:color/white"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp"
android:orientation="vertical">
<ImageView
android:id="@+id/thumbnail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:scaleType="fitCenter"/>
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="2"
android:textColor="@android:color/darker_gray"
android:padding="5dp"
android:textSize="14sp"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="30dp">
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="right"
android:layout_alignParentRight="true"
android:gravity="center_vertical"
android:text=""/>
<TextView
android:id="@+id/text2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toLeftOf="@+id/text1"
android:layout_gravity="right"
android:gravity="center_vertical"
android:layout_marginRight="10dp"
android:text=""
android:textColor="@android:color/holo_red_dark"/>
</RelativeLayout>
<Button
android:id="@+id/add_to_cart"
android:layout_width="match_parent"
android:layout_height="30dp"
android:background="@drawable/add_button"
android:layout_marginBottom="5dp"
android:textColor="@android:color/white"
android:text="Add"/>
</LinearLayout>
添加
android:descendantFocusability="blocksDescendants"
在自定义 GridView 项目的根视图中
<?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="wrap_content"
...
android:descendantFocusability="blocksDescendants"
>
...
<Button
...
/>
...
</LinearLayout>
GridView
onItemClick 不工作。Button
OnClickListener 工作。
当我从中删除按钮时,GridView
onItemClick 起作用。
任何解决方案请帮助我。
<?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="wrap_content"
android:background="@android:color/white"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp"
android:orientation="vertical">
<ImageView
android:id="@+id/thumbnail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:scaleType="fitCenter"/>
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="2"
android:textColor="@android:color/darker_gray"
android:padding="5dp"
android:textSize="14sp"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="30dp">
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="right"
android:layout_alignParentRight="true"
android:gravity="center_vertical"
android:text=""/>
<TextView
android:id="@+id/text2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toLeftOf="@+id/text1"
android:layout_gravity="right"
android:gravity="center_vertical"
android:layout_marginRight="10dp"
android:text=""
android:textColor="@android:color/holo_red_dark"/>
</RelativeLayout>
<Button
android:id="@+id/add_to_cart"
android:layout_width="match_parent"
android:layout_height="30dp"
android:background="@drawable/add_button"
android:layout_marginBottom="5dp"
android:textColor="@android:color/white"
android:text="Add"/>
</LinearLayout>
添加
android:descendantFocusability="blocksDescendants"
在自定义 GridView 项目的根视图中
<?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="wrap_content"
...
android:descendantFocusability="blocksDescendants"
>
...
<Button
...
/>
...
</LinearLayout>