这是我的使用案例:
我需要使用 ActionBar Navigation Tabs创建3个选项卡,并使用 ActionBarSherlock来完成此操作。每个选项卡都是一个 Fragment。但是,每个选项卡中都显示了一些共同的信息(在我的情况下,产品标题、描述)。我已经为这些共同的信息创建了另一个Fragment,并在每个主Fragment布局中引用了这个Fragment,如this。
这是我的问题:
我想重用检索和显示公共信息的Fragment实例。我正在使用下面的代码,但它似乎总是在每个主Fragment中创建一个新的公共Fragment实例。
FragmentManager fm = getFragmentManager();
f = (ProductDetailsInfoFragment) fm.findFragmentByTag("prodinfo");
if (f == null) {
Log.d(TAG, "fragment not found...creating new instance");
f = new ProductDetailsInfoFragment();
f.setTargetFragment(this, 0);
fm.beginTransaction().replace(R.id.prod_info_fragment, f, "prodinfo").commit();
}