gpt4 book ai didi

android - tabhost 在屏幕方向改变时重新加载

转载 作者:行者123 更新时间:2023-11-29 18:15:22 26 4
gpt4 key购买 nike

我使用 tabhost 作为我的主要 Activity 。并在 initial 中显示第一个列表。然后单击第二个列表。此时,屏幕方向发生变化,屏幕变为初始列表。如何解决?我已经在下面尝试过:1. 在Manifest中添加android:configChanges="orientation|keyboardHidden"android:screenOrientation="portrait"2.在每个activity中添加onConfigurationChanged

@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}

还有其他解决办法吗?

对不起~我的意思是 tabcontent(FrameLayout) 中的内容。并且选项卡 (TabWidget) 不会在屏幕更改时重新加载。

创建时,调用 AActivity 以显示 list1。在 AActivity listonclick 中,我让它调用 BActivity 来显示 list2。但是当屏幕改变时,tabcontent 调用 AActivity 并显示 list1。

最佳答案

如果我没理解错的话,你需要保存选择了哪个Tab。你可以尝试这样的事情......

public class MyTabActivity extends TabActivity
implements TabHost.onTabChangeListener {

private int currentTab = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
...
getTabHost().setOnTabChangedListener(this);
}

@Override
protected void onResume() {
...
currentTab = getSharedPreferences("myapp", MODE_PRIVATE).getInt("currentTab", 0);
getTabHost().setCurrentTab(currentTab);
}

@Override
protected void onPause() {
...
getSharedPreferences("myapp", MODE_PRIVATE).edit().putInt("currentTab", currentTab).commit();
}

@Override
public void onTabChanged(String tabId) {
currentTab = getTabHost().getCurrentTab();
}
}

关于android - tabhost 在屏幕方向改变时重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8440242/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com