【发布时间】:2011-12-14 11:19:50
【问题描述】:
我正在尝试将数据保存在 Fragment 的 onSaveInstanceState() 中,但从未调用过该方法。
有人可以帮忙吗?
public class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
ScrollView content = (ScrollView) inflater.inflate(R.layout.content, container, false);
// More stuff
return content;
}
@Override
public void onSaveInstanceState(Bundle icicle) {
// NEVER CALLED
super.onSaveInstanceState(icicle);
//More stuff
}
}
【问题讨论】:
-
你在使用actionbar sherlock吗?我刚刚检查以确保我拥有最新的支持包,并意识到我正在使用 actionbar sherlock。我确实更新了最新的 ABS,但我仍然遇到问题。不确定 ABS 是否是罪魁祸首?
-
我刚刚尝试了 Mark Murphy 的 EU4You (github.com/commonsguy/cw-android/tree/master/Fragments/EU4You_6) 与普通支持库以及 ActionBarSherlock。在这两种情况下,它都调用了 onSaveInstanceState 并将包传递给 onActivityCreated。所以,还是要查明原因。