具體表現(xiàn)
ScrollView 嵌套 GridView 、ListView等類似的控件時(shí),當(dāng)從網(wǎng)絡(luò)上獲取數(shù)據(jù)時(shí)刷新界面,此事發(fā)生的情況是: ScrollView 自動(dòng)滑到屏幕的最低端,具體來說時(shí)滑動(dòng)展示數(shù)據(jù)最后一條的位置,如果此時(shí)進(jìn)行下拉刷新,也會(huì)出現(xiàn)布局顯示不合理的狀況。
為何如此
childView 有獲取焦點(diǎn)的能力
由于該 childView 超過屏幕大小,并且有獲取焦點(diǎn)的能力,所以造成了該問題。由于不能改變其大小,只能阻止其獲取焦點(diǎn)?;舅悸酚?,取消它獲取焦點(diǎn)的能力,讓ScrovView截獲它的焦點(diǎn)等。
如何解決
讓 childView 的焦點(diǎn)被截獲
具體方案
ScrollView 下的 LinearLayout 中加了?android:descendantFocusability="blocksDescendants"