【第22期】观点:IT 行业加班,到底有没有价值?

【解决】Listview 嵌套ListView/ScrollView 导致item点击无效

原创 2016年08月29日 19:47:07

开发用到的:点击歌曲列表的item,希望能让每个item都能展开,列出所具有的打点记录。

情况:

开发中很常见的一个问题:会发生点击每一个item的时候没有反应,无法获取的焦点。

原因:

  • 1.在自己定义的Item中存在如:ImageButton,Button,CheckBox等子控件(或是Button或者Checkable的子类控件)
  • 2.此时这些子控件会得到焦点,导致当点击item时变化的是子控件,item本身的点击没有响应。

解决方法:

  • 使用descendantFocusability来解决
  • API描述如下:
    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会“覆盖”子类控件而直接获得焦点

通常我们用到的是第三种

即在Item布局的根布局加上android:descendantFocusability=”blocksDescendants”的属性就

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

ScrollView嵌套ListView处理事件冲突

当ListView嵌套在ScrollView中时会有两个问题 列表内容显示不全 滑动事件冲突 第一个问题可以参考ScrollView与ListView嵌套仿微博个人主页中的解决方法。第二个问题就是下面...

Android ListView item 点击事件失效问题的解决

关于ListView点击无效,item无法相应点击事件的问题,网上有很多, 大致可分为俩种情况, 一种是 item中存在 ImageButton 等可以点击的组件,这会抢先获得ListView的焦点....

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

解决自定义ListView中滑动事件和点击的setOnItemClickListener事件冲突的问题

解决自定义ListView滑动事件和点击事件冲突的问题 一、问题描述 自定义的ListView加入下拉刷新和上拉加载更多后会出现滑动时触发了点击单个条目的setOnItemClickListene...

ListView的点击事件与子控件点击冲突的解决

转发自:http://m.blog.csdn.net/article/details?id=52040100 面试的时候被问到这个问题,只能说见识短啊,没遇到过这个问题,回来赶紧搜了一下解决...

listview为不同的item设置不同的点击事件

偶尔看见陌陌有这个功能,系统机器人发来不同的内容点击后有不同的响应,如发来的是有新表情可以使用的通知,点击后就进入更新表情页面;发送生日祝福语音,就播放声音,发来的是位置图片,点击后就跳转到地图定位页...

ListView setOnItemClickListener无效原因详细分析

前言 最近在做项目的过程中,在使用listview的时候遇到了设置item监听事件的时候在没有回调onItemClick 方法的问题。我的情况是在item中有一个Button按钮。所以不会回调。...

Android5.x:RecycleView(一):实现ListView + GridView + StaggeredGridLayou效果

参考: Android RecyclerView 使用完全解析 体验艺术般的控件Hongyang对RecyclerView的adapter进行了各种封装: 博客: Android 优雅的为Recy...

Android中ListView点击和ListView的item里面的Button或ImageView不能同时生效问题的解决

今天遇到一个问题:android中ListView点击和里边ImageView点击不能同时生效问题解决。 研究ListView,首先ListView的适配器类型分为三种,ArrayAdapter,SimpleAdapter和SimpleCursorAdapter,其中以ArrayAdapter最为...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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