Erstellen Sie eine Seitenleiste wie Dolphin-Browser oder Firefox in Android

8

Ich möchte eine Sidebar wie die in Delfin Browser oder Firefox für Android erstellen.

Ich habe eine Listenansicht, die mein Hauptbildschirm ist. Wenn ich nach rechts wechsle, möchte ich die Listenansicht nach rechts verschieben und eine neue Ansicht auf der linken Seite erscheinen lassen.

Wie dies

Danke

PS: Ich bin ein Franzose, Entschuldigung für das Englisch: -)

    
Carbodrache 08.01.2011, 20:31
quelle

3 Antworten

3

Sehen Sie sich die Workspace Widget im Android Open Source Project Launcher2-Code . Dies ist das Widget, das das Seitenwechselverhalten auf dem Android-Startbildschirm implementiert.

Die Grundidee besteht darin, ein benutzerdefiniertes Widget zu erstellen, das seinen Inhalt mit Regeln für das Fangen an einer endgültigen Position versehen kann, wenn der Benutzer umgeht oder loslässt. Verwenden Sie onInterceptTouchEvent , um zu bestimmen, wann der Benutzer eine horizontale Schwelle überschritten hat (die Systemwerte dafür erhalten Sie von ViewConfiguration ) und entfernen Sie den Eingabefokus von allen untergeordneten Ansichten in der Hierarchie. Von dort aus steuern Sie das Schwenken in onTouchEvent . Sie können einen VelocityTracker verwenden, um festzulegen, wie der Inhalt geschaltet werden soll, wenn der Nutzer loslässt und ein Scroller , damit Sie an die endgültige Position animieren können.

    
adamp 08.01.2011 22:22
quelle
2

Verwenden Sie den ViewPager , der von Support-V4-Paket , Sie können Fragments darin eingeben, einen für Ihren Hauptbildschirm und einen weiteren für Ihre Sidebar und dann den Benutzer kann wischen, um die versteckte Seitenleiste zu sehen.

    
marmor 05.04.2012 15:57
quelle
1

Sie können den Bereich mit LinearLayout mit einer Breite von 0 erstellen, dann können Sie auch mit GestureBuilder horizontale Überstreichungen und mit Animation die Breite Ihres LinearLayouts schrittweise auf die gewünschte Breite ändern.

    
Kowlown 06.04.2012 11:32
quelle

Tags und Links