真正解決ScrollView巢狀RecyclerView的顯示不全及滑動問題
很多人都會遇到ScrollView巢狀RecyclerView巢狀的問題,各種巢狀模式,這種巢狀會出現以下幾種問題:
1、ScrollView和RecyclerView兩者都會滑動,而且有時候,滑動會衝突
2、RecyclerView顯示不全的問題
3、如果你使用NestedScrollView會出現你一點即item就抖動的問題
4、如果你在RecyclerView外層新增一個RelativeLayout,並新增android:descendantFocusability=”blocksDescendants”屬性的話,會出現RecyclerView子佈局獲取不了焦點的問題escendantFocusability有三個屬性,大家可以查一下這個屬性,控制焦點的屬性。無論是哪種屬性的話,在RecyclerView有Editext時都會有焦點問題
當然前面也說道了網上有很多關於這方面的解決辦法,但是都沒有真正的解決這個問題,
解決辦法一(無效):
上面說道的。新增android:descendantFocusability=”blocksDescendants”。
首先該屬性android:descendantFocusability的含義是:當一個view獲取焦點時,定義ViewGroup和其子控制元件兩者之間的關係。
它一共有3個屬性值,它們分別是:
beforeDescendants:viewGroup會優先子類控制元件而獲取焦點
afterDescendants:viewGroup只有當子類控制元件不需要獲取焦點的時候才去獲取焦點
blocksDescendants:viewGroup會覆蓋子類控制元件而直接獲取焦點
但是當item佈局有editText的時候這個屬性就解決不了這個問題了。遇到這個問題的就知道,如果沒遇到的可以自己去嘗試一下。
解決辦法二:(無效)
使用NestedScrollView代替ScrollView,同樣如果你ScrollView字佈局需要獲取焦點的話,會出現自定回彈的效果,很尷尬!
解決辦法N:(無效)
重寫LinearLayoutManager或GridLayoutManager