Android 滑动列表中item里焦点冲突问题

来源:互联网 发布:淘宝换货有没有运费险 编辑:程序博客网 时间:2024/05/16 10:16

在日常的开发中,经常会在一个可滑动的列表中构建一些稍微复杂的item,item里面可能会包含一下Button、Checkbox等,如果我们需要对列表的item进行点击的监听等,这时item里的控件Button、CheckBox会抢占焦点,从而到时item不能获取焦点,先给出三种方法,可以完美解决item和item控件中焦点一些问题,设置控件及item获取焦点优先级,更加灵活。

1.将Item布局中的子控件focusable属性设置为false
2.在代码中设置控件是否获取焦点,如   控件.setFocusable(false)

3.设置item的根布局的属性android:descendantFocusability="blocksDescendant"

               android:descendantFocusability属性共有三个取值,分别为

               beforeDescendants:viewgroup会优先其子类控件而获取到焦点
               afterDescendants:viewgroup 只有当其子类控件不需要获取焦点时才获取焦点
               blocksDescendants:viewgroup 会覆盖子类控件而直接获得焦点


1 0
原创粉丝点击