2012-07-31 10 views
5

Ich mache eine Ansicht und eine Aktivität, die SherlockMapActivity erweitert und SlidingMenu-Bibliotheken verwendet, damit meine Hauptansicht wie bei Google+ rollen kann. Ich habe das SlidingMenu per XML hinzugefügt und meine Ansicht scrollt perfekt das ausgeblendete Menü, aber es scrollt nur die Ansicht unterhalb der Aktionsleiste. In der Google+ App scrollt es auch durch die Aktionsleiste und ich habe gesehen, dass es eine Funktion gibt, die es ermöglicht, meine Aktionsleiste zu verschieben, aber es funktioniert nicht.Sherlock Action Bar mit Sliding-Menü

Was wäre der beste Weg, um meine Aktionsleiste mit der vollen Ansicht gleiten zu lassen? Vielleicht erweitere ich nicht die richtige Klasse?

Dies ist, wie ich die SlidingMenu meiner App hinzufügen:

XML-Datei:

<com.slidingmenu.lib.SlidingMenu 
    xmlns:sliding="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/slidingmenulayout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    sliding:viewAbove="@layout/activity_main" 
    sliding:viewBehind="@layout/menu_desplegado" 
    sliding:behindOffset="120dip" 
    sliding:behindScrollScale="0.25" 
/> 

Und das ist das Ergebnis:

Main Layout Screenshot

+0

Entschuldigung, es gibt nicht viel Code hier, aber hier ist ein Artikel über das, was Sie versuchen zu tun: http://android.cyrilmottier.com/?p=658 – Krylez

+0

@Alex können Sie einige Anweisungen auf, wie Sie haben actionbarsherlock zusammen mit dem gleitenden Menü implementiert. Ich habe Probleme. –

+2

@ aman.nepid Sie können es implementieren, indem Sie zum SlidingMenu-Projekt gehen, jede Sliding__Activity öffnen und alle "extends" in "extends Sherlock__Activity" ändern. Sie müssen dem SlidingMenu-Projekt Sherlock-Bibliotheken hinzufügen und dann das Projekt säubern und kompilieren.Dann müssen Sie diese neue SlidingMenu-Bibliothek Ihrem Projekt hinzufügen und sie verwenden, indem Sie Ihre Aktivität von Sliding__Activity ausdehnen. – Alex

Antwort

9

Ich habe mein Problem gelöst.

Um meine Aktionsleiste, um zu schieben, hatte ich die SlidingMenu auf diese Weise zu ändern:

  1. Kasse eine saubere Kopie von ActionBarSherlock und Import in Ihren Eclipse-Workspace.
  2. Fügen Sie ActionBarSherlock als Abhängigkeit von SlidingMenu hinzu.
  3. Gehen Sie in die SlidingActivities, die Sie verwenden möchten, und erweitern Sie Sherlock__Activity anstelle von __Activity.

Dann habe ich meine MainActivity von SlidingMapActivity erweitert und es hat perfekt funktioniert.

+0

Gibt es einen Link für dieses Tutorial oder können Sie diesen Code erklären? –

+0

@Pratik Butani - es ist ein direktes Zitat aus der README von github, hier: https://github.com/jfeinstein10/SlidingMenu/blob/master/README.md – anthropomo

+0

@anthropomo Wie man beim Klicken auf Menüpunkte im Sliding-Menü die Aktivität aufruft –

2

Okay, ich glaube, ich fand Ihre Antworten. Versuchen Sie, dieses Projekt auf Github Check-out: https://github.com/jfeinstein10/SlidingMenu

Hier ist ein Video davon in Aktion: http://www.youtube.com/watch?v=8vNaANLHw-c&feature=youtu.be

+0

Ich benutze diese Bibliothek in meinem Projekt, aber es gibt nicht viel Dokumentation darüber, wie man es benutzt. Ich werde mir das ganze Projekt genau ansehen, um zu sehen, ob ich etwas vermisse. Danke für die Antwort! – Alex

+0

Verwenden Sie setSlidingActionBarEnabled (true)? – Krylez

+0

Ja, ich fand es eine Weile googeln, aber es funktioniert immer noch nicht. Um diese Funktion zu verwenden, habe ich meine MainActivity SlidingMapActivity anstelle von SherlockMapActivity erweitert. – Alex

2

In meinem Fall entwickelt ist, ziehe ich diese SlideMenu in Code hinzuzufügen.

Nun, wenn Sie dieses SlideMenu erstellen:

menu = new SlidingMenu(this); 
menu.setMode(SlidingMenu.LEFT); 

dann auch diese Zeile gesetzt:

menu.attachToActivity(this, SlidingMenu.SLIDING_WINDOW); 

Dies macht die Magie !.

+0

Gibt es einen Link für dieses Tutorial oder können Sie diesen Code erklären? @SkyNetRush –

+0

Danke, das hat mein Problem gelöst. – MrByte

Verwandte Themen