以前項目中有個需求,webview做爲recyclerview的一個item,用以實現加載H5新聞,原生實現評論的功能,當主體功能實現完畢的時候,忽然出現一個意外:當滑動到文章底部的評論區域進行評論點贊,調用adapter.notifyDataSetChanged後,頁面自動滾動到頂部,百思不得其解。最後通過分析,多是webView 獲取到了焦點,經過對根佈局設置android
android:descendantFocusability="blocksDescendants">
bug解決。web
「android:descendantFocusability」的詳細解釋以下圖所示:佈局
descendantFocusabilitywebview
大意是:it
該屬性是當一個爲view獲取焦點時,定義viewGroup和其子控件二者之間的關係。bug
屬性的值有三種:im
beforeDescendants:viewgroup會優先其子類控件而獲取到焦點項目
afterDescendants:viewgroup只有當其子類控件不須要獲取焦點時才獲取焦點recyclerview
blocksDescendants:viewgroup會覆蓋子類控件而直接得到焦點。img