Android OnSwipeTouchListener和OnTouchListener不';当他们';我们都在代码中
我正在制作一个android应用程序,在这个应用程序中,我必须点击一张图片,但也要向左/向右滑动。 但当我的代码中同时包含这两个代码段时,只有onswiptouchthelistener可以工作。侦听器都位于同一个ImageView上 代码1:Android OnSwipeTouchListener和OnTouchListener不';当他们';我们都在代码中,android,imageview,ontouchlistener,Android,Imageview,Ontouchlistener,我正在制作一个android应用程序,在这个应用程序中,我必须点击一张图片,但也要向左/向右滑动。 但当我的代码中同时包含这两个代码段时,只有onswiptouchthelistener可以工作。侦听器都位于同一个ImageView上 代码1: pic.setOnTouchListener(new OnSwipeTouchListener(this) { @Override public void onSwipeLeft() {
pic.setOnTouchListener(new OnSwipeTouchListener(this) {
@Override
public void onSwipeLeft() {
Toast.makeText(MainActivity.this, "LEFT", Toast.LENGTH_LONG).show();
}
public void onSwipeRight() {
Toast.makeText(MainActivity.this, "RIGHT", Toast.LENGTH_LONG).show();
}
});
代码2:
pic.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
Toast.makeText(MainActivity.this, "CLICK WORKS", Toast.LENGTH_LONG).show();
return true;
}
});
但是,当我只有“代码2”时,OnTouchListener代码可以完美地工作
为什么
提前谢谢。我不完全确定什么是
OnSwipeTouchListener
。但是一个视图只能有一个OnTouchListener
。第二次调用pic.setOnTouchListener()
也会删除第一个侦听器,因此两者不能同时工作是合乎逻辑的
您要做的是创建一个实现
View.OnTouchListener
的对象,并处理滑动和单次点击。请参阅以获得良好的起点。为此,我最终实现了一个带有ImageView片段的Viewpager。刷卡功能已经以这种方式集成