Wie zu öffnen navigation drawer auf den button klicken Sie in der Haupt-fragment?
Habe ich eine app mit einer Aktivität, die über eine Navigations Schublade zu öffnen, eine Reihe von verschiedenen Fragmenten. Ich habe die actionbar drawertoggle, aber es ist nicht sehr sichtbar.
Wenn ich eine Schaltfläche in der onCreateView in meiner main-fragment(fragment, der erscheint, wenn die app zum ersten mal startet), wie bekomme ich es zum öffnen der navigation Schublade, gesteuert durch meine Aktivität?
Diese scheint zu funktionieren. Die Antwort ist viel einfacher, als ich dachte, es wäre.
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View fragView = inflater.inflate(R.layout.mainmenu, container, false);
button1 = (Button) fragView.findViewById(R.id.button1);
mDrawerLayout = (DrawerLayout)getActivity().findViewById(R.id.drawer_layout);
mDrawerList = (ListView)getActivity().findViewById(R.id.left_drawer);
button1.setOnClickListener(this);
return fragView;
}
@Override
public void onClick(View v) {
mDrawerLayout.openDrawer(mDrawerList);
}
Danke für Eure Antworten.
InformationsquelleAutor user2729524 | 2013-10-18
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
wenn Sie brauchen, öffnen Sie die Folie:
wenn Sie brauchen, schließen Sie die Folie
BEISPIEL
meine mDrawerLayout instanziert ist hier:
meine Folie Zustand:
wenn Sie brauchen, um zu wissen, das dia-Menü-Zustand (geschlossen, geöffnet). Verwenden Sie diesen code:
schließlich. Sie können der Nutzung Ihrer click-Ereignis wie diesem:
in meinem Fall mein slide-Menü auf der rechten Seite (die Schwerkraft.ENDE), aber wenn Sie benötigen, auf der linken Seite, versuchen Sie es mit der Schwerkraft.START
Diese Arbeit für mich, ich hoffe, dass dein problem gelöst.
mDrawerLayout.isDrawerOpen(drawerView)
statt Flaggeich möchte dieses layout über meine Ansicht. IN DIESEM LAYOUT IST DAS VERSCHIEBEN AUF EINE SEITE. was soll ich tun?
in Ihrer xml -, Letzte (Unterste) deklariert Ansicht höchsten z-index (oben) standardmäßig über Antwort soll akzeptiert werden, wenn es das Problem behoben hat.
Alles funktioniert gut, aber
setDrawerListener
ist veraltet verwenden müssenaddDrawerListener
InformationsquelleAutor Miguel Rodríguez
wenn Sie die Standard-navigation Aktivität in android Sie müssen nur
fügen Sie diesen code in click-listener der button --->
für das schließen Sie nicht haben, etwas zu tun.
InformationsquelleAutor behrad
Verwenden Sie die standard-callback-Modell wie hier beschrieben:
http://developer.android.com/training/basics/fragments/communicating.html
Wenn Sie die Taste drücken, starten Sie einen Rückruf, um die Aktivität und öffnen der Schublade.
InformationsquelleAutor Kuffs
Ich habe eine viel einfachere Lösung, die mit
isDrawerOpen()
.Diese automatisch öffnet oder schließt den navigation drawer auf der Grundlage der Schublade den aktuellen Status (Geöffnet/Geschlossen)
InformationsquelleAutor Sapnesh Naik