我在Android文档上看到:
public void setRetainInstance(boolean retain)从以下版本开始:API Level 11控制是否在重新创建活动时保留片段实例(例如从>配置更改) . 这只能用于不在后栈中的片段 . 如果设置,>重新创建活动时,片段生命周期会略有不同:
任何人都可以向我解释更多关于“这只能用于不在后堆栈中的碎片” . 我构建了一个简单的测试示例 . 我把片段放回堆栈 . 但是setRetainInstance方法仍然有效 . 我把片段放到这样的后台:
FragmentTransaction transaction2 = getSupportFragmentManager().beginTransaction();
MyFragment myFragment = new MyFragment();
myFragment.setHasOptionsMenu(true);
transaction2.replace(R.id.fragment_container, myFragment);
transaction2.addToBackStack(null);
transaction2.commit();
在我的片段oncreate方法:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRetainInstance(true);
Log.v("MyFragment", "onCreate");
}
我是片段中的新手 . 请帮我弄清楚这个问题 . 注意:我使用过:SherlockFragment