Android ActionBar: Tabs dynamisch ein- / ausblenden?
Ist es möglich, die Registerkartenleiste dynamisch aus der Aktionsleiste zu entfernen / wiederherzustellen?
Bisher habe ich dazu den Navigationsmodus der Aktionsleiste geändert. Ich habe folgenden Code verwendet, um die Tab-Leiste zu entfernen und wiederherzustellen:
@Override
public void restoreTabs() {
getSupportActionBar()
.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
this.supportInvalidateOptionsMenu();
}
@Override
public void removeTabs() {
getSupportActionBar()
.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
this.supportInvalidateOptionsMenu();
}
Das funktioniert, aber es gibt ein großes Problem: Jedes Mal, wenn ich anrufesetNavigationMode
, onTabSelected
heißt in derTabListener
und die aktuell geöffnete Registerkarte wird neu erstellt.