Hallo,
kann man ein OnClickListener() und einen OnTouchListener() gleichzeitig verwenden?
Was ich machen möchte ist folgendes: Ich habe ein Bild und wenn ich mit dem Finger über das Bild von rechts nach links (bzw von oben nach unten), dann soll er sich im Bild bewegen. Wenn ich aber dann mit dem Finger in das Bild kurz reintippe, dann soll er in das Bild hineinzoomen!
Das Bewegen und Zoomen ist kein Problem, aber ich kann leider die Events nicht gleichzeitig aufrufen... Geht das überhaupt?
Hier kurze Code Schnippsel:
Code
OnClickListener zoomInTouched = new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
zoomIn.apply();
repaint();
}
};
OnTouchListener zoomTouched = new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
oldX = event.getX();
oldY = event.getY();
if(event.getDownTime() > 500){
}
break;
case MotionEvent.ACTION_MOVE:
if (oldX >= 0 || oldY >= 0) {
float newX = event.getX();
float newY = event.getY();
pan.apply(oldX, oldY, newX, newY);
oldX = newX;
oldY = newY;
repaint();
}
break;
case MotionEvent.ACTION_UP:
oldX = 0;
oldY = 0;
break;
}
return true;
}
};
Alles anzeigen
Wenn ich eines von beiden aktiviert habe, klappt es wunderbar... Wenn allerdings beide aktiviert sind, funktioniert nur der OnTouchListener()!!!
Was soll ich tun?
Danke für eure Hilfe!