屏幕旋转时的标签页更改[Android]
|
嗨,我有带有4个标签的Android APP(例如,tab1,tab2,tab3,tab4)。活动开始时,默认选项卡为tab1。我切换到任何其他标签(标签2、3或4)并更改屏幕方向,它始终重置为默认标签(标签1)。
我尝试使用以下代码:
@Override
public void onConfigurationChanged(Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
setContentView(R.layout.main);
createView();
}
在createView()内部,我有:
private void createView()
{
... // Tabs are created before
tabHost.getTabWidget().setCurrentTab(CurrentTab);
}
CurentTab
是private int,默认设置为0,但在TabChange上设置:
public void onTabChanged(String tabId) {
... some code
CurrentTab = tabHost.getCurrentTab();
}
我被堆放在这里...还有其他解决方法吗?
很快:我希望该选项卡在屏幕旋转时不会更改为默认值...
没有找到相关结果
已邀请:
3 个回复
渴翅吮斡撤
,并返回当前选定的选项卡。然后在选项卡活动的onCreate上调用ѭ5,它返回在onRetainNonConfigurationInstance()中返回的对象。如果对象为null,则知道方向没有变化,因此只需选择第一个选项卡;如果不为null,则屏幕旋转,您可以使用返回的值来确定之前和之后选择了哪个选项卡。再次设置。
喷乡顾沥沪
稀瓣囊
API
;在旧版平台上,也可以通过Android兼容性软件包获得此功能。 恕我直言,使使用起来更容易一些。