2010-07-10 6 views
8

Ich entwickle eine Android-Anwendung, die drei sehr ähnliche Aktivitäten hat. Ich möchte, dass der Benutzer zwischen ihnen wechseln kann, indem er auf dem Bildschirm nach links und rechts wischt. Dies ist, wie ich es geschafft, dass bis jetzt:Android: Wie wird zwischen Aktivitäten wie dem Wechseln von Desktops in der Home App gewechselt?

ich dies gefolgt post

Dann änderte ich die Methode onSwipe() auf diese Weise:

@Override 
public void onSwipe(int direction) { 
    Intent intent = new Intent(); 

    switch (direction) { 

    case SimpleGestureFilter.SWIPE_RIGHT: 
    intent.setClass(this, TodoTodaySheet.class); 
    break; 
    case SimpleGestureFilter.SWIPE_LEFT: 
    intent.setClass(this, TrashSheet.class); 
    break; 

    } 
    startActivity(intent); 
} 

Es funktioniert, aber ich bin nicht ganz damit zufrieden. Außerdem weiß ich nicht, ob dies der richtige Ansatz ist.

Ich möchte ein Verhalten wie das auf Home-Apps, wenn Desktop wechseln. Daher möchte ich eine flüssigere Animation und das Erscheinen der aufgerufenen Aktivität aus der richtigen Richtung, z. von der linken Seite des Bildschirms beim Streichen auf der rechten Seite.

Irgendwelche Hinweise? Vielen Dank.

+0

Dieser Tipp ist nicht zum Wischen zwischen Aktivitäten (Ich möchte das selbst tun, habe aber noch keine Möglichkeit dazu gefunden), aber der Wechsel zwischen Ansichten ist am besten mit diesem gemacht: ViewFlow https://github.com/ pakerfeldt/android-viewflow – Ted

+0

@dgraziotin welchen ansatz hast du zuletzt benutzt um durch verschiedene aktivitäten zu gleiten? – juned

Antwort

4

Der Home-Bildschirm zwischen den Aktivitäten sehen kann es nur blättert zwischen unterschiedlichen Ansichten, wie Sie in its' source code (Linie 298 ist, wo die Bilder blättern nicht sind geändert).

Wenn Sie zwischen den Aktivitäten wechseln, sind Sie der Benutzerkonfiguration & der Geräte Fähigkeiten, was passiert mit dem Display während des Übergangs, so dass Sie nicht viel tun können.

+0

Daher ist die einzige Möglichkeit, dies zu erreichen, einen ViewFlipper wie Faisal schlägt, oder ein TabView und einige Gesten haben, um zwischen Aktivitäten zu wechseln, wie die News App. – dgraziotin

+0

Die Verwendung eines ViewFlipper würde Sie auf eine einzelne Aktivität beschränken, die Auswirkungen darauf hat, wie das Betriebssystem Ihre Anwendung verwaltet (z. B. bleibt dem Betriebssystem beim Löschen der Ressourcen die Option kill all or nothing übrig). –

1

Während es wahrscheinlich am besten ist, sie als drei separate Aktivitäten zu haben, habe ich gesehen, wie Leute einen ViewFlipper verwenden, um einen ähnlichen Effekt in einer einzelnen Aktivität zu erzielen.

Hier ist ein Link mit ein wenig mehr Informationen über sie: http://www.inter-fuser.com/2009/07/android-transistions-slide-in-and-slide.html

+0

Danke dafür. Ich möchte diesen Ansatz vermeiden, da die drei Aktivitäten (das sind Listenaktivitäten) ähnlich sind, aber eine ziemlich schwere Aufgabe (Abrufen von Dingen aus der Datenbank usw.) – dgraziotin

Verwandte Themen