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

M
Antworten
21
Aufrufe
1.199
swa00
swa00
Mr-Fisch
Antworten
5
Aufrufe
908
migi01
migi01
Mr-Fisch
Antworten
8
Aufrufe
963
Mr-Fisch
Mr-Fisch
M
Antworten
9
Aufrufe
741
mkuz24
M
A
Antworten
5
Aufrufe
670
swa00
swa00
Zurück
Oben Unten