Ciao, stavo guardando il seguente esempio di Frammenti sul sito di Android.Qual è il punto di setArguments?
http://developer.android.com/guide/components/fragments.html#Example
Vorrei sapere perché vengono eseguiti certi metodi.
Perché, per esempio, nel detailsFragment
è il seguente metodo eseguito:
public static DetailsFragment newInstance(int index) {
DetailsFragment f = new DetailsFragment();
// Supply index input as an argument.
Bundle args = new Bundle();
args.putInt("index", index);
f.setArguments(args);
return f;
}
Non potresti anche semplicemente istanziare il DetailsFragment
e utilizzare un metodo setter per impostare index
invece. Bypassare l'intero setArguments
.
Qual è il punto di utilizzo di setArguments
in primo luogo? Non potresti usare solo setter e getter?
Recentemente è diventato comune che le funzionalità di base di un'applicazione siano incapsulate in 'Fragments', e quindi che' Activities' gestisca essenzialmente la disposizione delle schermate (e la navigazione tra) composte da detti frammenti. Con un 'Activity', puoi passare un' Bundle' di extra in un intento e avere accesso a questo fin da subito con 'onCreate()'. 'Fragments' non risponde alle intenzioni, quindi puoi usare' setArguments() 'per fornirgli un' Bundle' "di extra" prima che venga creato. – Karakuri
@Karakuri grazie che è utile sapere. – HGPB
Dai un'occhiata a questo: http://stackoverflow.com/a/7160253/334493 –