是否可以从操作栏中动态删除/恢复标签栏?
到目前为止,我通过更改操作栏的导航模式来做到这一点。我使用以下代码删除和恢复标签栏:
@Override
public void restoreTabs() {
getSupportActionBar()
.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
this.supportInvalidateOptionsMenu();
}
@Override
public void removeTabs() {
getSupportActionBar()
.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
this.supportInvalidateOptionsMenu();
}
这行得通,但有一个大问题:每次我调用setNavigationMode
, 时onTabSelected
都会在 中调用,TabListener
并且会重新创建当前打开的选项卡。