今天在做项目时有一个这样的场景,Android的ListView列表中的item里有一个按钮需要给他添加点击事件。但是我们都知道根据事件的分发机制是因为listview消费掉了事件,没有向下传递了
后来查找资料得知在ListView列表中的item适配器布局的最外层容器中可以设置一个这样的值descendantFocusability 如下:
descendantFocusability 该属性是当一个为view获取焦点时,定义viewGroup和其子控件两者之间的关系。
属性的值有三种:
beforeDescendants:viewgroup会优先其子类控件而获取到焦点
afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点
blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点