ListView中item与控件抢夺焦点解决办法

原创 2015年11月19日 10:49:30
        1.将ListView中的Item布局中的子控件focusable属性设置为false
        2.在getView方法中设置button.setFocusable(false)
        3.设置item的根布局的属性android:descendantFocusability="blocksDescendants"

      这三种方法都是为了让Button等控件不能获取焦点,从而使得item可以响应点击事件。

第三种方法使用起来比较方便

它是将item布局中的其他所有控件都设置为不能获取焦点

        android:descendantFocusability属性共有三个取值,分别为
        beforeDescendants:viewgroup会优先其子类控件而获取到焦点
        afterDescendants:viewgroup 只有当其子类控件不需要获取焦点时才获取焦点
        blocksDescendants:viewgroup 会覆盖子类控件而直接获得焦点
版权声明:本文为博主原创文章,未经博主允许不得转载。

android ListView显示多个类型item 和 item中控件抢夺焦点解决办法

在android  ListView item条目中 如果添加有ImageView,Button 等会强行获取获取焦点 导致 ListView 本身的监听失效 下面是总结的几个方法 来进行避免此类问题...

ListView的Item中子控件抢占焦点的两种解决办法 .

当为ListView的Item自定义布局时,如果布局中包含可获取焦点的子控件(诸如ImageButton,Button,CheckBox等子控件,也可以说是Button或者Checkable的子类控件...

关于ListView中含有CheckBox,Button等控件失去焦点的解决办法

这里有三种解决方案 1.将ListView中的Item布局中的子控件focusable属性设置为false 2.在getView方法中设置button.setFocusable(false) 3.设...

ListView同时响应itemclick事件和item控件的onClickListener时间的解决办法

listview可以根据自己的需求,重写baseadapter ,实现自己的布局及数据,但是当我们在自己的布局中加入了button或者ImageButton,还有其他比如checkbox,radiob...

【Android开发经验】关于ListView中item与控件抢夺焦点的那些事

原文地址:http://blog.csdn.net/zhaokaiqiang1992/article/details/28430607 在开发中,listview可以说是我们使用最频繁的控件...

Android关于ListView中item与控件抢夺焦点的那些事

在开发中,listview可以说是我们使用最频繁的控件之一了,但是关于listview的各种问题也是很多。当我们使用自定义布局的Listview的时候,如果在item的布局文件里面存在Button或者...

关于ListView中item与控件抢夺焦点的那些事

 在开发中,listview可以说是我们使用最频繁的控件之一了,但是关于listview的各种问题也是很多。当我们使用自定义布局的Listview的时候,如果在item的布局文件里面存在Butt...
  • rsgzs
  • rsgzs
  • 2015年12月12日 23:22
  • 213

android:descendantFocusability用法简析 解决listview中子控件导致item不能获取焦点

开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了...

关于CListCtrl控件更新Item的闪烁问题和一次插入大容量数据的显示问题解决办法

程序需要从数据库某一个活动表中,定时取数据,更新界面的列表显示,比如有20条数据(变化),则这20数据 不停的变化,(通过其他程序实现) 方案(1),先在列表中查找,后插入 比如每条记录都有一个唯一的...
  • oldmtn
  • oldmtn
  • 2011年04月14日 09:19
  • 2002
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ListView中item与控件抢夺焦点解决办法
举报原因:
原因补充:

(最多只允许输入30个字)