Kor*_*oly 1 java android android-fragments
我正在尝试使用片段和RadioGroup实现标签栏
我像这样切换片段像这样改变radiogroup(在sdk示例中看到类似的东西)
公共区域
void onCheckedChanged(RadioGroup radioGroup, int id) {
TabInfo newTab = mContent.get(id);
if (newTab != lastTab) {
FragmentTransaction transaction = mActivity.getSupportFragmentManager().beginTransaction();
if (lastTab != null && lastTab.fragment != null) {
transaction.detach(lastTab.fragment);
}
if (newTab.fragment == null) {
newTab.fragment = Fragment.instantiate(mActivity, newTab.getTag());
transaction.add(mContainerId, newTab.fragment);
} else {
transaction.attach(newTab.fragment);
}
lastTab = newTab;
transaction.setCustomAnimations(R.anim.tab_transaction, R.anim.tab_transaction);
transaction.commit();
}
}
Run Code Online (Sandbox Code Playgroud)
但每次发生这种情况时,附加片段都是从头开始创建的,即调用onCreate等等.
有什么方法可以保留片段在活动中一次又一次地创建?我也不希望后退按钮可以切换回来;
而不是使用方法FragmentTransaction.attach()和FragmentTransaction.detach()你可以使用FragmentTransaction.show()和FragmentTransaction.hide() .您还需要更改上面示例中给出的一些周围代码,但我会将其作为您自己的一个练习.
| 归档时间: |
|
| 查看次数: |
3730 次 |
| 最近记录: |