解决listview与SwipeRefreshLayout滑动冲突问题
程序员文章站
2022-06-08 17:56:45
...
在向上滑动时不会有影响,但是在下拉刷新时,不论listview在什么位置都会触发SwipeRefreshLayout刷新。
所以需求是:在listview处于顶部时才触发SwipeRefreshLayout下拉刷新。
解决方法如下:
listView.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
boolean enable = false;
if(listView != null && listView.getChildCount() > 0){
// check if the first item of the list is visible
boolean firstItemVisible = listView.getFirstVisiblePosition() == 0;
// check if the top of the first item is visible
boolean topOfFirstItemVisible = listView.getChildAt(0).getTop() == 0;
// enabling or disabling the refresh layout
enable = firstItemVisible && topOfFirstItemVisible;
}
swipeRefreshLayout.setEnabled(enable);
}});
上一篇: POJ1321-Chess Problem(dfs基础题)
下一篇: 八皇后【洛谷】
推荐阅读
-
ScrollView与ListView合用(正确计算Listview的高度)的问题解决
-
Android ListView与ScrollView冲突的解决方法总结
-
ScrollView与ListView合用(正确计算Listview的高度)的问题解决
-
解决自定义$(id)的方法与jquery选择器$冲突的问题
-
php中$美元符号与Zen Coding冲突问题解决方法分享
-
asp.net开发与web标准的冲突问题的一些常见解决方法
-
python3.8与pyinstaller冲突问题的快速解决方法
-
android基础教程之android的listview与edittext冲突解决方法
-
mysql滑动订单问题原理与解决方法实例分析
-
Android 中SwipeRefreshLayout与ViewPager滑动事件冲突解决方法