ScrollView里面有RecyclerView,RecyclerView里的item有EditText,我是在这个页面在后台的时候,因为数据发生了变化,获取焦点产生的问题
item里的控件设置以下属性后
android:clickable=“true”
android:focusableInTouchMode=“true”
android:focusable=“true”
android:background="@drawable/selecter"
recycleview 父子焦点争夺。。。。bug
1给recycleview所在根布局设置上
android:focusable=“true”
android:focusableInTouchMode=“true”
2
设置item的根布局的属性
android:descendantFocusability=“blocksDescendant”
它是将item布局中的其他所有控件都设置为不能获取焦点。
android:descendantFocusability属性共有三个取值,分别为
beforeDescendants:viewgroup会优先其子类控件而获取到焦点
afterDescendants:viewgroup 只有当其子类控件不需要获取焦点时才获取焦点
blocksDescendants:viewgroup 会覆盖子类控件而直接获得焦点