我有两个标签,例如Tab1和Tab2,显示在屏幕上。让它们在竖屏方向显示。
Tab1显示Activity1,Tab2显示Activity2。
当前,所选标签状态为Tab2。现在,我将方向从PORTRAIT改为LANDSCAPE。在将方向更改为LANDSCAPE模式时,不会显示Tab2,而是显示Tab1。
基本上,我想要保存选项卡状态,当方向改变时。
为了实现保存选项卡状态的目标,我正在编写以下代码:
protected void onPause() {
super.onPause();
saveCurrentTabState(getSelectedTab());
}
private void saveCurrentTabState(int value) {
PreferenceManager.getDefaultSharedPreferences(this).edit().putInt(
"tabState", value).commit();
}
@Override
protected void onResume() {
super.onResume();
setCurrentTab(PreferenceManager.getDefaultSharedPreferences(this)
.getInt("tabState", 0));
}
我想知道,我的方法是否正确,上面的代码是否是在改变方向时保存选项卡状态的适当方式。
mActionBar.getSelectedTab().getPosition()
获取位置,并使用mActionBar.setSelectedNavigationItem(int)
进行设置。 - DoriTabHost
类。 - Cristian