84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
人生最曼妙的风景,竟是内心的淡定与从容!
没有看你的代码,但是遇到过相同的问题,首先你需要判断手指位移来判断当前Touch事件应该被哪个组件捕获,就比如你当前的左右滑动,当前你的组件有你的listview,还有你listview里面的每一个item。这样一切都明白了,就好做了。贴个实例吧,不然也不真诚。
class YScrollDetector extends GestureDetector.SimpleOnGestureListener { @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { if (Math.abs(distanceX) >= Math.abs(distanceY)) { //父亲不滑动 setParentScrollAble(false); return true; }else{ setParentScrollAble(true); } return false; } }
这个用来判断左右滑动,并选择组建捕获。
private void setParentScrollAble(boolean flag) { if(parentListView!=null){ parentListView.requestDisallowInterceptTouchEvent(!flag); } }
这个用来分发事件
如果还没解决的话你可以尝试的看下这个开源例子:https://github.com/timroes/EnhancedListView支持你说的侧滑删除
没有看你的代码,但是遇到过相同的问题,首先你需要判断手指位移来判断当前Touch事件应该被哪个组件捕获,就比如你当前的左右滑动,当前你的组件有你的listview,还有你listview里面的每一个item。这样一切都明白了,就好做了。贴个实例吧,不然也不真诚。
这个用来判断左右滑动,并选择组建捕获。
这个用来分发事件
如果还没解决的话你可以尝试的看下这个开源例子:https://github.com/timroes/EnhancedListView支持你说的侧滑删除