Android Geste- Swipe von Oben nach Unten

  • 2 Antworten
  • Letztes Antwortdatum
H

HammerH

Neues Mitglied
0
Ich brauch Hilfe :(

Ich muss in eine App implementieren, dass wenn ich meinen Finger von oberen Rand des Bildschirms zum unteren bewege, dass ein Wert sich ändert, z.B. boolean swipe = true;

Ich versteh jedoch alles, was ich bisher im Internet gefunden habe, nicht wirklich.

Hat jemand n leichtes Tutorial oder kann mir einen Code zeigen, wo was ähnliches implementiert worden ist?
Es ist wichtig, dass der Swipe wirklich vom oberen Rand bis zum unteren Rand durchgeführt wird.

LG
 
Hi,

hier ist die Android-Doku
In der onDown holst du dir einfach die X/Y-Achse (also da wo geklickt worden ist) und beim OnUp holst du dir wieder die Achsen.
Dann kannst du sagen:
Code:
if(onDownY <= 0 && onUpY >= screenHeight) {
// Wurde von ganz oben bis ganz unten gewischt
}

Wo ist dein problem?

Gruß
 
Ich dreh gleich durch :cursing:

also ich hab es nun so angestellt

public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
starty = event.getY();
}
else if (event.getAction()==MotionEvent.ACTION_UP)
{
endy = event.getY();
}
Log.i(TAG, "Poistion von startY = "+starty +"und endY =" +endy +"und maxy =" +screenheight);

if(starty <=0 && endy>=840)
{
openOptionsMenu();
}

sobald man von oben nach unten swiped, soll das Menü sich öffnen.

Bloß weiß ich nicht, wie ich die "screenHeight" ermittele, so dass diese app auch für andere geräte funktioniert oder wenn ich den display drehe.
Ich hab nun so viele Sachen ausprobiert aber ..
ich initialisiere die screenheight mit public float screenheight = 0;

Dann versuche ich das hier zB :

public void getSize() {


Point size = new Point();

this.getWindowManager().getDefaultDisplay().getSize(size);
screenheight= size.y;

}
aber wenn ich das mir in LogCat anschaue, kommt bei screenheight immer der selbe wert raus, wie ich ihn initialisiere. Ob 0, 5 oder sonstiges. Nur der Wert, den ich initialisiere.

Was mach ich falsch?


EDIT: Ok, Problem gelöst. Die Antwort ist ja schon fast peinlich aber dennoch:

Hab vergessen, die Funktion irgendwie aufzurufen :) Die stand einfach so im Raum und hatte nichts zu tun.

Und danke IceClaw, du hast mir den Stupser in die richtige Richtung gegeben :D
 
Zuletzt bearbeitet:

Ähnliche Themen

asconsulting
Antworten
5
Aufrufe
161
LonelyGremlin
LonelyGremlin
Katharina1985
Antworten
9
Aufrufe
612
Anz
Anz
M
Antworten
21
Aufrufe
1.795
swa00
swa00
Mr-Fisch
Antworten
5
Aufrufe
1.129
migi01
migi01
Mr-Fisch
Antworten
8
Aufrufe
1.133
Mr-Fisch
Mr-Fisch
Zurück
Oben Unten