0

我是android开发的初学者,这个问题真的很困扰我

现在我有这样的代码行:

getFragmentManager()
    .beginTransaction()
    .replace(R.id.activity_blank, new WordlistPage(unit, false), "wordlistitems")
    .commit();

每次执行上述部分时,都会创建一个新的 WordlistPage 并初始化片段视图。

例如,目前我正在阅读 FragmentA 中的内容,过了一会儿我切换到 FragmentB,一分钟后我又回到 FragmentA。我想要的是fragmentA与它原来的一样,而不是被重建。

所以有什么建议吗?

4

1 回答 1

0

为了避免每次切换片段时都创建一个新片段,我做了这样的事情:

FragmentManager fragmentManager = getFragmentManager();
Fragment fragment = fragmentManager.findFragmentByTag("FragmentTag");
if (fragment == null) {
    fragment = new CustomFragment();
    fragmentManager.beginTransaction().replace(R.id.frag, fragment, "FragmentTag").commit();
} else {
    fragmentManager.beginTransaction().attach(fragment).commit();
}
于 2013-10-15T07:22:13.833 回答