Ich verwende die Gesten-API mit einer Gestenbibliothek, die ich erstellt habe, und sie funktioniert wirklich gut. Das Problem besteht darin, dass die Geste nach dem Beenden von OnGesturePerformedListener auf dem Bildschirm sichtbar sein soll. Stattdessen wird die Geste gelöscht. Ich dachte, dass vielleicht ein Ereignis nach OnGesturePerformedListener ist - ich konnte die Geste in OnGesturePerformedListener speichern und dann in diesem späteren Ereignis wieder anzeigen. Wer weiß, ob es ein solches Ereignis gibt? Hier ist der Code:Android SDK - Verwenden der Gesten-API, möchte die Gesten auf dem Bildschirm bleiben, nachdem sie erkannt wurden
private OnGesturePerformedListener handleGestureListener = new OnGesturePerformedListener() {
@Override
public void onGesturePerformed(GestureOverlayView gestureView,
Gesture gesture) {
if (gesture.getStrokesCount() != 2){
setWonderEmoticon();
return;
}
ArrayList<Prediction> predictions = gLib.recognize(gesture);
// one prediction needed
if (predictions.size() > 0) {
Prediction prediction = predictions.get(0);
// checking prediction
if (prediction.score > 20.0) {
setHappyEmoticon();
}
else {
setWonderEmoticon();
}
}
}
};
By the way, das gleiche passiert, wenn setWonderEmoticon() und setHappyEmoticon() aus dem Code entfernt werden.
Dies funktioniert genau so, wie mein Code tut - kein Mehrwert. Die Geste verschwindet vom Bildschirm, aber ich möchte, dass sie auf dem Bildschirm bleibt. – scrayne
Ich hoffe, dass es ein anderes Ereignis gibt, das auftritt, wenn die Geste ausgeführt wird, aber bevor sie verschwindet. – scrayne
Okay, ich habe meine Antwort bearbeitet, vielleicht können die Änderungen Ihre Frage beantworten. –