您的位置:首页 > 移动开发 > Android开发

解决ScrollView嵌套ListView、GridView默认不停留顶部的问题

2017-11-28 21:20 344 查看
ScrollView嵌套了ListView或者GridView时,ListView等子View有时候会抢占焦点,导致ScrollView会自动滑动至其已获取焦点的子控件的顶部。

解决方法:

可以手动scrollTo()或者smoothScrollTo()。

觉得上面方法不好玩不爽的话,那就重写ScroolView的computeScrollDeltaToGetChildRectOnScreen方法,将返回值设为0,使ScrollView内布局产生变化时,不会正确滚动到focus child位置。

/**
* 解决嵌套listview gridview抢占焦点 显示的问题
* @param rect
* @return
*/
@Override
protected int computeScrollDeltaToGetChildRectOnScreen(Rect rect) {
//禁止scrollView内布局变化后自动滚动
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐