【发布时间】:2015-04-18 13:15:58
【问题描述】:
我有以下内容(以避免检查片段是新创建还是重新创建)
@Override public void onActivityCreated(Bundle args) {
super.onActivityCreated(args);
if (this.getArguments() != null) args = this.getArguments();
// rest of fragment loading goes here
}
【问题讨论】:
-
我认为您正在尝试在片段中创建一个本地字段并通过调用 getArguments();您可以使用静态工厂方法尝试它,该方法将参数从类外部放入片段。就像来自 ViewPagerFragment 适配器的 getFragment。
-
“是否保存”关于什么?除了您的本地参考
args之外,您不会覆盖任何内容。您不会更改通过super调用传递的Bundle。 -
Java是pass-by-value,所以是的,这很安全,您只需将本地变量args更改为指向另一个对象
标签: android android-fragments android-lifecycle