java.lang.IllegalStateException: не может выполнить это действие после onSaveInstanceState при использовании FragmentTabHost

Я пытаюсь создать вкладку с помощью кода ниже

public class FragmentTabs extends FragmentActivity {

private FragmentTabHost mTabHost;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mTabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);
    mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);

    mTabHost.addTab(mTabHost.newTabSpec("simple").setIndicator("Simple"),
            SimpleFrag.class, null);

    mTabHost.addTab(mTabHost.newTabSpec("detailed").setIndicator("Detailed"),
            DetailedFrag.class, null);

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}    

Код всегда показывает java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState внутри FragmentManager. Я погуглил несколько раз и прошёл через все ссылки. но я не могу найти никакого решения. Пожалуйста, помогите мне, потому что я застрял на этом.

-------------------------------------------------- ----Редактировать---------------------------------

Приведенный выше код иногда работает нормально и иногда вызывает исключение.

2 ответа

Пожалуйста, попробуйте следующий код.

super.onCreate(savedInstanceState);
View root = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE).inflate(R.layout.activity_main, null, false);
setContentView(root);
mTabHost = (FragmentTabHost) root.findViewById(android.R.id.tabhost);
mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);
mTabHost.addTab(mTabHost.newTabSpec("simple").setIndicator("Simple"),SimpleFrag.class, null);
mTabHost.addTab(mTabHost.newTabSpec("detailed").setIndicator("Detailed"), DetailedFrag.class, null);

Попробуйте использовать это:

if (savedInstanceState == null) {
        // write code here
    }

если не передать код

Другие вопросы по тегам