今天做項目時發現NestedScrollView嵌套RecyclerView的頁面布局總是會自動滑動到RecyclerView部分,看了布局代碼後懷疑是NestedScrollView的問題,百度搜尋發下已經有大神遇到相同問題,遂做個記錄,友善以後檢視,感謝大神,文檔末有原文位址!!!
由于NestedScrollView嵌套RecyclerView,導緻Recyclerview占據焦點導緻整個NestedScrollView内容上滑問題解決方法:
方法一:在根布局設定android:descendantFocusability=”blocksDescendants” ;
android:descendantFocusability 有三種值:
beforeDescendants:viewgroup會優先其子類控件而擷取到焦點
afterDescendants:viewgroup隻有當其子類控件不需要擷取焦點時才擷取焦點
blocksDescendants:viewgroup會覆寫子類控件而直接獲得焦點
這種方法,會造成頁面中Editext焦點被搶導緻無法輸入,需要用到第二種方法。
方法二:對于有Editext的頁面需要在根布局使用 :
android:focusable="true"
android:focusableInTouchMode="true"
方法三:在NestedScrollView頂部第一個控件使用 :
android:focusable="true"
android:focusableInTouchMode="true"
原文連結:https://blog.csdn.net/u012230055/article/details/80016802