本文介绍了为什么android GridView项目里面的按钮不能单击?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
GridView
onItemClick无效. Button
OnClickListener正常工作.当我从中删除按钮时, GridView
onItemClick起作用.
任何解决方案请帮助我.
GridView
onItemClick not working.Button
OnClickListener is work.When I remove button from it, GridView
onItemClick work.
Any solution please help me.
<?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项的rootview中
in the rootview of your custom GridView item
<?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>
这篇关于为什么android GridView项目里面的按钮不能单击?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!