2012-11-24 13 views

Odpowiedz

24

Ja sam korzystałem z biblioteki Feinstein i postanowiłem stworzyć przykładową aplikację z elastyczną i możliwą do ponownego wykorzystania implementacją, o ile mogłem myśleć.

Proszę sprawdzić the source code at GitHub.

Download app bezpośrednio do urządzenia, aby spróbować.

W tym menu przesuwnym, podobnie jak w treści, użyto fragmentu listy. Zrobiłem dwa podejścia. Po pierwsze, gdy dane listy są wypełnione danymi załadowanymi z pliku XML. Po drugie, gdy dane są wypełniane z oddzielnej klasy.

Dodałem wiele komentarzy, aby łatwiej go złapać. Mam nadzieję, że będzie to pomocne! ;)

+0

@Andrius Baruckis Hej, użyłem twojego przykładowego projektu, jego prostego i dobrego :) Ale stoję przed problemem w kodzie źródłowym. Nie można znaleźć następującego importu: import com.slidingmenu.lib.SlidingMenu; – berserk

+1

OK naprawiono ten jeden xD Ale błąd w getSlidingMenu() Błąd: Metoda getSlidingMenu() od typu SlidingMenuInitialiser odnosi się do brakującego typu SlidingMenu – berserk

+0

OK naprawiono wszystkie błędy XD Właśnie usunięto instrukcję importu i zmieniono na oryginalną bibliotekę Feinstein: re – berserk

10

Załóż Activity która rozciąga SlidingActivity utwórz Fragment dla swojego menu, aw metodzie onCreate dodać:

FrameLayout frameLayout = new FrameLayout(this); 
frameLayout.setId(ID_MENUFRAME); 
setBehindContentView(frameLayout); 
FragmentTransaction ft = getFragmentManager().beginTransaction(); 
MenuFragment menuFragment = new MenuFragment(); 
ft.replace(ID_MENUFRAME, menuFragment); 
ft.commit(); 

gdzie ID_MENUFRAME jest int, który nie jest identyfikatorem obecnym w twoim układzie (ustawiłem go na 1).
Następnie, jeśli chcesz, aby otworzyć lub zamknąć menu, zadzwoń:

getSlidingMenu().toggle(); 

i używasz swoją aktywność jak każda inna działalność.
Należy pamiętać, że programowo należy dostosować program SlidingMenu. Na przykład:

sm.setBehindOffsetRes(R.dimen.slidingMenu_behindOffset); 
sm.setShadowWidthRes(R.dimen.slidingMenu_shadowWidth); 
sm.setShadowDrawable(R.drawable.slidingmenu_shadow); 
+0

** Dziękuję bardzo! ** Mam nadzieję, że to na pewno mi pomoże ;-) –

+0

Tu trafiają błędy: "MenuFragment" nie można rozwiązać na typ. Jakieś pomysły? – Ada

+1

Musisz stworzyć własny "Fragment" i zastąpić 'MenuFragment' przez własny fragment. – yDelouis