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

WebView加下拉刷新的时候,如果WebView内部有上下滑动的列表,会与下拉刷新的滑动冲突

2017-05-15 17:07 633 查看
WebView
加下拉刷新的时候,如果
WebView
内部有上下滑动的列表,会与下拉刷新的滑动冲突,表现在
WebView
滑到下面就再也滑不上去了。网上查了很多解决办法,有重写
WebView
的,有重写
SwipeRefreshLayout
的(我这里使用的下拉刷新控件是
SwipeRefreshLayout
),有比较简单的,有比较复杂的,但是试过好多以后发现都没有作用。下面是一种很简单的思路,既不重写
WebView
,也不重写
SwipeRefreshLayout
,却能解决这个冲突(有作用不用感谢我,有问题请留言告诉我):

直接重写
WebView
onTouchListener
方法,在
DOWN
事件的时候判断
WebView
滑动的距离是不是0,如果是0就代表
WebView
在顶部,就可以触发下拉刷新;如果不是0,就代表
WebView
不在顶部,不能触发下拉刷新,代码如下:

mWebView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:{
if(mWebView.getScrollY() <= 0){
refreshLayout.setEnabled(true);
} else {
refreshLayout.setEnabled(false);
}
}
default:
break;

}
return false;
}

});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: