German Frage zum Gesture Detector

Joe73

Active Member
Licensed User
Hallo,

Könnte mir vielleicht jemand erklären, vielleicht auch mit einem kleinen Beispiel,
wie man einen "Schwungrad"-Effekt hin bekommt?
Ich denke das sollte wohl mit dem Gesture Detector gehen...

vielen Dank und mfg Jürgen
 

Joe73

Active Member
Licensed User
Hallo,

also momentan funktioniert es mit dem Gesture Detector so, dass ich
den Finger nach rechts oder links schiebe auf dem Display und sich mein
Diagramm ebenfalls in diese Richtungen bewegt...
Sobald ich den Finger vom Display löse hören die Bewegungen auf.
Nun möchte ich es wie folgt haben:
Mit "Schwung" schiebe ich den Finger auf dem Display in eine Richtung und
das Diagramm verschiebt sich ebenfalls, wenn ich den Finger löse vom Display,
dann soll sich das Diagramm weiterhin verschieben, aber immer langsamer
werden bzw. langsam auslaufen...
Ich vermute, dass es mit "Gesture_onFling" gehen sollte, weis aber nicht wie...

Hoffe ich habe mich verständlich ausgedrückt...


mfg Jürgen
 

Joe73

Active Member
Licensed User
Hallo,

auf eine CANVAS zeichne ich mittels DRAWCIRCLE Punkte welche mit DRAWLINE
verbunden werden.
Diese Kurve kann ich mit dem GestureDetector Zoomen und verschieben.
Ich möchte über einen längeren Zeitraum (Jahre) Messwerte eingeben und darstellen.

Gruß Jürgen
 

klaus

Expert
Licensed User
Longtime User
Ein Canvas muss einer anderen View zugestellt werden.
Was für eine View nimmst Du?
Panel, ImageView?
Was machst Du wenn Du das Diagramm zoomst?
Und was machst Du wenn Du es verschiebst?
Zeichnerst Du jedes mal neu?
Leider mehr Fragen als Antworten.
Aber ich möchte zuerst das Problem besser verstehen.
 

Joe73

Active Member
Licensed User
Hallo,
zunächst einmal vielen Dank für Deine Hilfe.
Als View nehme ich ein Panel.
Beim Zoomen und Verschieben rechne ich die x Werte um und zeichne die Kurve neu.

Ob das eine optimale Lösung ist weiss ich nicht. Es gibt da ja auch eine tolle Lib für diverse Diagramme. Leider erfordert sie kontinuierliche Daten.
Ich möchte es gerne so haben, dass man z.B. 2 Werte pro Tag hat, oder im Extremfall jede Minute oder mal eine Woche keine Werte...
Gruß Jürgen
 

klaus

Expert
Licensed User
Longtime User
Was Du da machen willst ist keine so leichte Aufgabe.
Das zeichnen musst Du selbst machen, ich kenne keine Library die so was macht.
Was für Messwerte nimmst Du auf?
Werte alle Minuten und dann eine Woche keine Werte, kommt mir komisch vor.
Und das dann noch in einem Diagramm?
Für das scrollen müsstest Du neue xWerte in einem Timer rechnen.
Erel hatte mal Gleichungen dafur gepostet, habe sie aber nicht mehr gefunden.
 

Joe73

Active Member
Licensed User
Hallo,

ich hatte mal etwas mit MPAndroidCharts getestet. Das hat mir sehr gut gefallen.
Nur leider, wie schon geschrieben, braucht man da regelmäßige X-Werte.
Also z.B. jede Stunde bzw. jeden Tag, auch wenn man da mehrere Kurven gleichzeitig darstellen
möchte...
Also mit Werten jede Minute ist vielleicht etwas übertrieben, aber sollte halt auch möglich sein.
Ich möchte Verbrauchswerte aufnehmen, Strom, Wasser oder auch Temperatur.
Da sollte es ja möglich sein, dass man regelmäßig Werte aufnimmt und dann vielleicht
durch Abwesenheit mal einige Zeit nicht.
So hatte ich mir das vorgestellt...
Mit dem Zoom bzw. Verschieben, das klappt ja schon ganz gut...
Nun wollte ich noch diesen "Schwungrad-Effekt" implementieren...


Gruß Jürgen
 

Joe73

Active Member
Licensed User
Hallo Klaus,
Vielen Dank für Deine zugesagte Hilfe.
Einen schönen Urlaub wünsche ich Euch...

mfg Jürgen
 

Joe73

Active Member
Licensed User
Hallo,
Also ich habe es jetzt glaube hin bekommen.
Vielleicht noch einiges Fine-Tuning...
Ich nutze bei onFling die Variable velocityX,
ab einer bestimmten Größe wird im Millisekunden das Diagramm verschoben und velocityX verringert bis zu einem bestimmten Wert.
Somit kommt der von mir gewünschte Effekt zustande...

Gruß Jürgen
 
Top