In meinem Programm ich verwende diesen Code:OnTouchListener innerhalb einer Methode
int value =100;
View.OnTouchListener button1listener = new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
if (action == MotionEvent.ACTION_DOWN) {
if (value==50) {
System.out.println("button1, value 50");
} else if (value==100) {
System.out.println("button1, value 100");
} else if (value==200) {
System.out.println("button1, value 200");
} else if (action == MotionEvent.ACTION_UP)
System.out.println("No action");
return false;
}
};
button1.setOnTouchListener(button1listener);
Es funktioniert gut, aber ich möchte es für viele Knöpfe machen, so dass anstelle von Kopieren und Einfügen ich möchte ein Verfahren haben dafür. Ich habe versucht, es alleine zu machen, aber meine Lösung ist nicht korrekt und ich bin mir nicht sicher, wie ich es schaffen kann. Code unten präsentiert meine falsche Lösung. Also im Grunde möchte ich diesen Code in eine Methode packen und dann mit setOnTouchListener und anderen Parametern aufrufen.
private void setListener(parameter1, String parameter2) {
int value =100;
View.OnTouchListener parameter1 = new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
if (action == MotionEvent.ACTION_DOWN) {
if (value==50) {
System.out.println(parameter2 + "value 50");
} else if (value==100) {
System.out.println(parameter2 + "value 100");
} else if (value==200) {
System.out.println(parameter2 + "value 200");
} else if (action == MotionEvent.ACTION_UP)
System.out.println("No action");
return false;
}
};
}
Geräte 'OnTouchListener()' in der Klasse und in der Methode überprüfen Sie die Ansicht feststellen, dass Benutzer geklickt und Code eingeben, wenn Sie möchten, kann ich eine detaillierte Antwort erstellen. –
Sie haben 'parameter1' in die Parameterliste ohne einen Typ eingefügt ... Das wird also nicht kompiliert. Plus, du hast es später neu definiert –
@BrunoFerreira würde ich gerne sehen – AidanSalvatore