如果我没有将OnScrollListener设置为如下所示,则在滚动到列表底部然后向上滚动后,ListView中的顶视图会被切断。
如下所示设置OnScrollListener似乎有效,但这似乎很奇怪,这是必需的。我希望Google能够修复此问题,而无需设置此监听器。有什么想法吗?
mListView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView absListView, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
if (firstVisibleItem == 0 && visibleItemCount > 0 && absListView.getChildAt(0).getTop() >= 0) {
mSwipeToRefreshLayout.setEnabled(true);
} else {
mSwipeToRefreshLayout.setEnabled(false);
}
}
});
}
答案 0 :(得分:7)
我遇到了类似的情况,并且覆盖canChildScrollUp
方法为我修复了它。当您使用包含SwipeRefreshLayout
或ListView
且ID为GridView
的{{1}}时,只需使用以下内容。
android.R.id.list