我有一个使用TabGroupActivity的应用程序,当我更改屏幕方向时,他们恢复了我加载的第一个视图。示例:我在视图3上,我将手机旋转到横向,并恢复了第一个视图(tabGroup的加载视图)。
我如何解决这个问题?
由于
答案 0 :(得分:0)
如果您加载了视图onCreate()
,请在清单文件中使用TabGroupActivity
尝试以下操作:
<activity
android:label="@string/app_name"
android:name=".TabGroupActivity"
android:configChanges="orientation" />
答案 1 :(得分:0)
在该活动的清单中设置android:configChanges属性。您应该将值设置为“orientation | keyboard | keyboardHidden”,这将阻止您的活动被杀死并重新启动,从而保持您当前的状态。
答案 2 :(得分:0)
您应该在onSaveInstanceState()
中保存您所在的标签:
public void onSaveInstanceState(Bundle toSave) {
super.onSaveInstanceState(toSave);
toSave.putString("currentTab", tabs.getCurrentTabTag());
}
然后在onCreate()
:
public void onCreate(Bundle savedState) {
super.onCreate(savedState);
String tabTag = null;
if (savedState != null) {
tabTag = savedState.getString("currentTab");
}
... //tab initialization code
tabs.setCurrentTabByTag(tabTag);
...
}