我现在listview的item中我写了一个OnTouchListener,但是发现横向滑动的时候老是会触发listview的上下滑动事件,导致横向滑动很难滑出来,但是滑出来第一次后,后面就很容易划出来了!大神帮忙看看!!!感谢!
让人很是苦恼,这个该怎么处理呢?查过资料说改返回值为false,改了都滑不出来!
/**
* 侧滑显示删除按钮
*/
private View.OnTouchListener convertTouch = new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int position = (Integer) v.getTag();
if (position != lastPosition) {
notifyDataSetChanged();
lastPosition = position;
}
offsetX = operation.getWidth();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN: {
x = event.getRawX();
}
break;
case MotionEvent.ACTION_UP: {
ux = event.getRawX();
if ((x - ux) > 60) {
v.setX(-offsetX);
} else if (v.getX() == 0) {
String name = list.get(position).getName();
String userid = list.get(position).getUserId();
Intent intent = new Intent(mActivity, AddressContactDetailsActivity.class);
intent.putExtra("name", name);
intent.putExtra("userId", userid);
mActivity.startActivity(intent);
} else {
v.setX(0);
}
}
break;
case MotionEvent.ACTION_MOVE: {
ux = event.getRawX();
if ((x - ux) > 60) {
v.setX(-offsetX);
}
}
break;
}
return true;
}
};
滑动系统有三种状态的监听,1你的手指还没离开,2停止,3手指放开但正在自动滑,
上下和左右只能分别进行,如果上下滑没有停止,貌似还会在停下之后延迟一小会,才能接受左右滑动的事件,
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。