美文网首页
约束布局中descendantFocusability属性导致输

约束布局中descendantFocusability属性导致输

作者: 若非让给给个个 | 来源:发表于2019-11-14 17:25 被阅读0次

    descendantFocusability是View的一个属性。先看字面意思,descendant的英文意思是后代、子孙,focus的意思是焦点。所以容易理解这个属性是viewGroup和其子控件焦点相关的属性。

    通过这个属性可以指定viewGroup和其子View到底谁获取焦点, 直接在viewGroup上使用就行。

    下面直接来看这个属性的属性值
    属性的值有三种:

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

    有了这个属性在recyclerview、listView等item中有ImageButton,Button,CheckBox等子控件的时候就可以很方便的控制是整个item获取焦点响应点击事件还是item中的这些子VIew获取焦点响应事件了。

    当控件(比如edittext)不正常时(拉不起键盘),先自己推断原因。想一想出现异常的情况,是点击事件被什么截取了,从最外层布局开始看,遇到自己不认识的属性就搜一下,不要因为一直看到那个属性,没明白他意思就放过。

    相关文章

      网友评论

          本文标题:约束布局中descendantFocusability属性导致输

          本文链接:https://www.haomeiwen.com/subject/qparictx.html