问题:处理父布局与子控件之间的焦点获取关系
举例: listView 中的item, 当有editText存在时会抢占item的焦点,使得点击item的事件不能够执行
解决: 1. xml 布局中:设置descendantFocusability属性
2. 代码中:setDescendantFocusability(int focusability)
分析: 1. android:descendantFocusability 属性值:
beforeDescendants:父布局会优先子布局获取焦点
afterDescendants: 只有当子布局不需要获取焦点时,父布局才会获取焦点
blocksDescendants:覆盖子布局直接由父布局获取焦点
2. setDescendantFocusability的参数值:
FOCUS_BEFORE_DESCENDANTS: 父布局会优先子布局获取焦点
FOCUS_AFTER_DESCENDANTS : 只有当子布局不需要获取焦点时,父布局才获取焦点
FOCUS_BLOCK_DESCENDANTS : 覆盖子布局直接由父布局获取焦点