Wie Sie verhindern, dass ein Fragment in der Navigationsleiste geöffnet wird, wenn dieses Fragment bereits geöffnet ist. Zum Beispiel habe ich ein Settings-Fragment in meinem Nav
Drawer zuerst, wenn ich auf das Fragment klicke, das es öffnet. Wenn ich nun klicke, sollte es nicht das gleiche Fragment zweimal öffnen, da dies ein Problem beim Zurückschlagen des Buttons verursacht.So verhindern Sie, dass ein Fragment in der Navigationsleiste geöffnet wird, wenn dieses Fragment bereits geöffnet ist
0
A
Antwort
0
Sie können die Position des Fragments in der Liste beibehalten, die gerade geöffnet ist. B. eine Variable namens mSelectedPosition
, die in onCreate()
auf -1 initialisiert wird. Dann wird der Code in Ihrem onItemClick()
im DrawerItemClickListener
kann möglicherweise so etwas wie
if (position == mSelectedPosition) {
closeDrawer();
return;
}
mSelectedPosition = position;
// Continue your work here.
0
sein, sollten Sie das neue Fragment an der onDrawerClosed() Rückruf ändern. Pflegen Sie eine Elementvariable wie currentFragmentPosition.
public void onDrawerClosed(View view)
{
super.onDrawerClosed(view);
if(clickedPosition != currentFragmentPosition)
{
// change Fragment
}
currentFragmentPosition = clickedPosition;
}
Verwandte Themen
- 1. Warum wird das Fragment nicht in der Navigationsleiste geöffnet?
- 2. Anklickbares Fragment anklickbar, wenn die Navigationsleiste geöffnet wird
- 3. Wie kann ich Fragment UI deaktivieren, wenn ein anderes Fragment über eins in Android geöffnet ist?
- 4. Fragment wird nicht mit FragmentPagerAdapter geöffnet
- 5. Navigationsschublade geöffnet nach dem Aufspringen Fragment Backstack
- 6. Wie aktualisiert man das Fragment, wenn die Registerkarte geöffnet wird?
- 7. Seite sperren, wenn sie bereits geöffnet ist
- 8. App stürzt ab, während neues Fragment in Viewpager geöffnet wird
- 9. Verhindern Aktualisierung, wenn das Popup geöffnet wird
- 10. android maps v2 stürzt ab, wenn in fragment wieder geöffnet
- 11. Die Navigationsleiste wird transparent, wenn die Tastatur geöffnet wird
- 12. Wie wenn ein Fragment bereits genannt onCreateView()
- 13. So stellen Sie den Fokus auf FloatingActionButton ein Auch wenn die Navigationsleiste in Android geöffnet ist
- 14. verhindern, dass die Unterfenster mehrmals geöffnet werden
- 15. Wie kann ich verhindern, dass der slimerjs Browser geöffnet wird, wenn ich ein Skript ausführe?
- 16. Kann verhindert werden, dass ein Popup direkt geöffnet wird und nicht von Javascript geöffnet wird?
- 17. Verhindern, dass Anwendung geschlossen wird, wenn eine Datei in Python geöffnet ist
- 18. Fragment bereits mit SwipeRefreshLayout hinzugefügt
- 19. Verhindern Fragment Recovery in Android
- 20. So entfernen Sie ein Fragment aus dem Fragment selbst
- 21. Navigationsleiste - Fragment nicht angezeigt
- 22. Wie kann man verhindern, dass die Android-Navigationsleiste automatisch geöffnet wird?
- 23. Wie kann ich verhindern, dass mein Fragment zerstört wird?
- 24. Fragment Manager in Navigationsleiste Fehlern
- 25. IllegalStateException: Fragment bereits im Tabhost-Fragment hinzugefügt
- 26. Multiple PlaceAutoCompleteFragment wird geöffnet, wenn sehr schnell darauf geklickt wird
- 27. Verhindern, dass BODY scrollt, wenn ein Modal geöffnet und CSS3 enthalten ist
- 28. Verhindern, dass TitledPane geöffnet wird, wenn auf das Grapich geklickt wird, in javaFX
- 29. Aktualisieren Sie Subplots in Matplotlib Abbildung, die bereits geöffnet ist
- 30. So verhindern Sie, dass mein Programm mehr als einmal geöffnet wird (Windows Mobile)
wo ist der Code? –