[英]android fragment onRestoreInstanceState
我是否遗漏了什么或Fragment
没有onRestoreInstanceState()
方法? 如果没有,我该如何去获得类似的东西?
在 Fragments 指南的 ListFragment 示例中,您可以找到:
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("curChoice", mCurCheckPosition);
}
你可以这样使用:
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if (savedInstanceState != null) {
// Restore last state for checked position.
mCurCheckPosition = savedInstanceState.getInt("curChoice", 0);
}
}
在片段从堆栈返回后调用onActivityCreated()
。
onViewStateRestored
的Fragment
是相当于onRestoreInstanceState
的Activity
。 但它在onActivityCreated(Bundle)
和onStart()
之前被onStart()
。
onActivityCreated 已弃用。 我发现它只是在片段生命周期方面令人困惑。 只需这样做:
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("curChoice", mCurCheckPosition);
}
// 进而:
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
savedIInistanceState?.let{
//restore the data here
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.