Objekte an Fragmente übergeben
Ich habe mit vielen gearbeitetFragments
Ich habe in letzter Zeit zwei unterschiedliche Methoden zum Übergeben von Objekten an die Fragmente verwendet, aber der einzige Unterschied, den ich sehen kann, besteht darin, dass das Objekt, das Sie übergeben, in der Vorgehensweise von FragmentOne das implementieren mussSerializable
Schnittstelle (und alles was damit zusammenhängt).
Gibt es irgendwelche Vorteile, wenn man eins über das andere benutzt?
public class FragmentOne extends Fragment {
public static final String FRAGMENT_BUNDLE_KEY =
"com.example.FragmentOne.FRAGMENT_BUNDLE_KEY";
public static FragmentOne newInstance(SomeObject someObject) {
FragmentOne f = new FragmentOne();
Bundle args = new Bundle();
args.putSerializable(FRAGMENT_BUNDLE_KEY, someObject);
f.setArguments(args);
return f;
}
public SomeObject getSomeObject() {
return (SomeObject) getArguments().getSerializable(FRAGMENT_BUNDLE_KEY);
}
}
und
public class FragmentTwo extends Fragment {
SomeObject mSomeObject;
public static FragmentTwo newInstance(SomeObject someObject) {
FragmentTwo fragment = new FragmentTwo();
fragment.setSomeObject(someObject);
return fragment;
}
public void setSomeObject(SomeObject someObject) {
mSomeObject = someObject;
}
}