Android开发:ListView控件:给Item绑定了点击事件,却点击无效

一.问题引入

ListView控件:给Item绑定了点击事件,却点击无效。

二.解决方案

ListView使用了自定义布局文件,在布局文件中有button等控件时,这些控件获取焦点的级别比listView的item高,所以当点击item时,button等控件会优先获得点击焦点。

解决方法就是在布局文件根元素中添加属性: android:descendantFocusability="blocksDescendants"

android:descendantFocusability

Defines the relationship between the ViewGroup and its descendants when looking for a View to take focus.

Must be one of the following constant values.

该属性是当一个为view获取焦点时,定义viewGroup和其子控件两者之间的关系。

属性的值有三种:

beforeDescendants:viewgroup会优先其子类控件而获取到焦点

afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点

blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点

时间: 2024-08-01 22:46:59

Android开发:ListView控件:给Item绑定了点击事件,却点击无效的相关文章

【Android】解决Android的ListView控件滚动时背景变黑

[转载]解决Android的ListView控件滚动时背景变黑 如果大家在非黑色背景下使用ListView控件时,Android默认可能在滚动ListView时这个列表控件的背景突然变成黑色.这样可能导致程序的黑色的背景和主程序的主题既不协调.解决的方法Google在设计Android时也考虑了,在Layout的ListView中加入android:cacheColorHint="#00000000" 的属性即可. 如: <?xml version="1.0"

CAD控件,CAD插件使用教程:Android开发使用控件--开发环境的搭建

Android开发使用控件入门--环境搭建 2014-12-24 09:57     14人阅读     评论(0)     收藏         编辑     删除 CAD控件.CAD三维控件,手机控件 Android开发控件 软件名称(,梦,,想.CAD  ,控件) 1. 环境搭建: 3 1.1. 安装Eclipse 3 1.2. 下载JDK 3 1.3. 下载Android SDK 5 1.4. 给Eclipse 安装ADT插件  8 1.5. 运行Eclipse设置Android ADT

我的Android进阶之旅------&gt;Android中ListView中嵌套(ListView)控件时item的点击事件不起作的问题解决方法

开发中常常需要自己定义Listview,去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了,可能会发生点击每一个item的时候没有反应,无法获取的焦点. 如果你的自定义ListViewItem中有Button.ImageButton或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取Focus.所以常常当点击item时变化的是子控件,item本身的点击没有响应. 这时候就可以使用descendan

我的Android进阶之旅------&amp;gt;Android中ListView中嵌套(ListView)控件时item的点击事件不起作的问题解决方法

开发中经常须要自定义Listview,去继承BaseAdapter,在adapter中依照需求进行编写,问题就出现了,可能会发生点击每个item的时候没有反应,无法获取的焦点. 假设你的自己定义ListViewItem中有Button.ImageButton或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取Focus. 所以经常当点击item时变化的是子控件,item本身的点击没有响应. 这时候就能够使用descendan

五步学会Android的ListView控件

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">使用Android的列表控件有几点要注意: </span> <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"&

Android开发_ImageButton控件

Android中的控件中的ImageButton有着一般Button控件所具有的一般特征,但有一个Image的脸 因此可以使用 setImageResource(resId); 来设定其图片资源. 经过测定,Button类组件的获取焦点,即setFocusChange()方法基本没有用,因为一般的Button都会响应点击时间,点击事件会覆盖掉获取焦点事件.

Android开发之控件-Android-PullToRefresh

下拉刷新,使用的是Android-PullToRefresh,Github--https://github.com/chrisbanes/Android-PullToRefresh PullToRefresh的简单使用办法 1.通过GitHub把相关的lib下载下来,导入到ADT 下载下来是这些文件 然后导入到ADT,导入以后是4个工程 LauncherActivityPullToRefreshListFragmentPullToRefreshViewPagerlibrary 假如导入以后,工程

Android开发CheckBox控件,全选,反选,取消全选

在Android开发中我们经常会使用CheckBox控件,那么怎么实现CheckBox控件的全选,反选呢 首先布局我们的界面: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_paren

Android开发ImageView控件缩放图片

首先还是最基础的ImageView控件如何显示图片: <ImageView                Android:id="@+id/imgView"                android:layout_width="fill_parent"                android:layout_height="fill_parent"                android:src="@drawable

Android开发 设置控件边角半圆

1 <?xml version="1.0" encoding="utf-8"?> 2 <shape xmlns:android="http://schemas.android.com/apk/res/android" > 3 <corners android:radius="30dip" /> 4 <solid android:color="#ff3290f0" /