【发布时间】:2013-12-31 05:58:09
【问题描述】:
我有一个使用 XML 附加到活动的片段(以及活动中的 setContentView())。 A 有一个问题,因为我的片段中有非常动态的视图,所以当方向改变时 我必须恢复所有的观点状态。
我遇到了问题,因为我正在使用类似的东西:
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putBoolean("restore", true);
outState.putInt("nAndroids", 2);
}
但是在调用带有参数 Bundle savedInstanceState 的方法(如 onCreateView 等)时方向更改后,我的 savedInstanceState 始终为空。
我不是 Android 的菜鸟,但现在因为这个问题我很生气......
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
if (savedInstanceState == null) {
//smth
} else {
// smthelse THIS IS NEVER REACHED BECAUSE BUNDLE IS ALWAYS NULL
}
getListView().setDivider(getResources().getDrawable(R.drawable.list_divider));
}
【问题讨论】:
-
Activity 中的相同内容可以正常工作(使用活动方法 onSaveInstance 状态)-我只对附加在 xml 布局中的片段中保存的捆绑包有问题...
-
您可以在片段中的 OnCreate 上发布您的代码吗?
-
我在文章末尾添加了。
-
@TommyNecessary "我不是 Android 的菜鸟,但现在因为这个问题我很生气......" :>