Ich habe eine Aktivität, deren einziger Zweck es ist, ein Fragment zu hosten. Ich beginne diese Aktivität mit einer Absicht und verwende dann Informationen aus der Absicht, um einem Fragment Fragmente hinzuzufügen, die ich zu der neuen Aktivität hinzufügen möchte.Bündel verschwinden von Fragment nach Commit?
Hier ist der onCreate in SingleClickerActivity (diese Aktivität wird durch den Intent gestartet). Beim Durchlaufen habe ich überprüft, dass das Fragment das Argument hat, das ich senden möchte. Fragment has argument (this is right before the transaction step)
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(getLayoutResId());
UUID clickerId = (UUID) getIntent().getSerializableExtra(EXTRA_CLICKER_ID);
FragmentManager fm = getSupportFragmentManager();
Fragment fragment = fm.findFragmentById(R.id.fragment_container);
if (fragment == null) {
fragment = createFragment(clickerId);
fm.beginTransaction()
.add(R.id.fragment_container, fragment)
.commit();
}
}
ich das Fragment gemacht habe, hat es die args Bündel, und ich verpflichte es. Aber wenn ich an die onCreate fragment:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mClickerId = (UUID) getArguments().getSerializable(ARG_CLICKER_ID);
mClicker = ClickerBox.get(getActivity()).getClicker(mClickerId);
}
NULL zurück. Das Bündel hat gequält. Wo geht es verloren?