Viewgroup的setDescendantFocusabil

2019-01-10  本文已影响0人  baiduo

setDescendantFocusability这个方法是用来处理Viewgroup和子View获取焦点的优先级,参数是个常量。
有三个常量可以选择:
1.blocksDescendants:ViewGroup拦截,不让子 view获取焦点。
2.beforeDescendants:ViewGroup优先尝试(尝试的意思是,根据View或ViewGroup当前状态来判断是否能得到焦点,如是否可见,是否可获取焦点等等,在View的requestFocus方法的注释中提到,下同)获取焦点,若ViewGroup没拿到焦点,再遍历子 view(包括所有直接子 view和间接子 view),让子 view尝试获取焦点。
3.afterDescendants:先遍历子 view,让子 view尝试获取焦点,若所有子 view(包括所有直接子 view和间接子 view)都没拿到焦点,才让ViewGroup尝试获取焦点。

上一篇下一篇

猜你喜欢

热点阅读