llistview的灵异事件
llistview的灵异事件
九洲北研 发表于4年前
llistview的灵异事件
  • 发表于 4年前
  • 阅读 140
  • 收藏 4
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

用listview的时候,上面放了button会抢焦点,只要设置enabled为false就行,不过如果上面加了多选按钮,你就会发现哪怕设置enabled为false也不行,这就需要。在你的adapter的布局文件的最高根控件设置这个  android:descendantFocusability=blocksDescendants

这时候就可以使用descendantFocusability来解决啦,API描述如下:

 

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

属性的值有三种:

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

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

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

 

通常我们用到的是第三种,即在Item布局的根布局加上android:descendantFocusability=”blocksDescendants”的属性就好了,至此listview点击的灵异事件告一段落。心得:遇到不会不懂的地方除了网上查询资料之外,也可以多多去尝试每种属性的作用,多阅读官方文档(我始终觉得还是读原文的比翻译的理解的会更好)。

 

共有 人打赏支持
粉丝 19
博文 113
码字总数 31491
×
九洲北研
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: