listview oclick事件不响应原因



当然大家都知道listview item上有类似于Button能默认获取到焦点的控件时候,该listview  的onitemOnclick()事件是不做响应的额,现在说下我理解的原因:



                 //  响应条件分析:

                   1.  条件不具备  :   listview  的onitemOnclick()能够响应的条件就是这行能够获取到焦点,从点击之后,该行颜色是修改的可以看出来这个问题,,,当他上面子控件获取到焦点时候,他就不能获取到焦点了,所以就不能响应这个item的点击响应事件了。

                 //事件分发角度

                    2. 不处理 : 在Android控件中,交互事件都是沿着控件树自顶向下传播的。当位于控件上层的父控件收到交互事件后,会先行判断该事件的目标控件对象,如果该事件正是自己所需要的,则会截获事件进行处理,否则就尝试将该事件向下分发给对应的子控件并递推的逐级向下传播事件,直至该事件被处理或截取。 这个控件没有获取到焦点,不能拦截处理事件,就会向下分发,这样子控件可以获取到焦点,这样就要可以处理事件,直至截取。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值