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尝试获取焦点。
Viewgroup的setDescendantFocusability方法使用
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 在最近写的项目中遇到由focus引起的问题,例如: 在两个嵌套的RecyclerView中,外层滑动停止后,由于内...
- 在非触摸屏设备中接收事件和处理响应的控件是具有焦点(Focused)的控件。一个窗口中一个时间内只能有一个具有焦点...
- 一、TouchMode Android支持多种交互方式:D-pad、滚动球、触摸屏等等。这些交互方式可以分为两类:...
- 图标资源对应的像素 有些时候不能使用Application的Context,不然会报错(比如启动Activity,...