Perché bundle ha metodi getParcelableArrayList
, getParcelable
; ma Intent
ha solo il metodo putParcelableArrayListExtra
? Posso trasmettere solo object<T>
, non ArrayList
di un elemento? Quindi, a cosa serve getParcelable
?Android: come passare all'oggetto Parcelable e utilizzare il metodo getParcelable del bundle?
36
A
risposta
108
Intenzione fornisce un sovraccarico di metodi putExtra().
Supponiamo di avere una classe Foo implementa Parcelable correttamente, per metterla in intenti in un'attività:
Intent intent = new Intent(getBaseContext(), NextActivity.class);
Foo foo = new Foo();
intent.putExtra("foo ", foo);
startActivity(intent);
di ottenere da intenti in un'altra attività:
Foo foo = getIntent().getExtras().getParcelable("foo");
Spero che questo aiuti.
2
Parcelable p[] =getIntent().getParcelableArrayExtra("parcel");
1
Innanzitutto creare Parcelable utilizzando Given Technique poi
public static CreditCardDetail newInstance(CreditCardItemBO creditCardItem) {
CreditCardDetail fragment = new CreditCardDetail();
Bundle args = new Bundle();
args.putParcelable(CREDIT_KEY,creditCardItem);
fragment.setArguments(args);
return fragment;
}
e ottenere come
if(getArguments() != null)
{
creditCardItem = getArguments().getParcelable(CREDIT_KEY);
}
dove
public static final String CREDIT_KEY = "creditKey";
0
E 'importante ricordare che il vostro m gli odori devono implementare l'interfaccia Parcelable e il metodo statico CREATOR. Questo caso è per gli elenchi
private static final String MODEL_LIST = "MODEL_LIST";
public MainFragment() {}
public static MainFragment newInstance(ArrayList<YourModel>
models) {
MainFragment fragment = new MainFragment();
Bundle args = new Bundle();
args.putParcelableArrayList(MODEL_LIST,models);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
ArrayList<YourModel> models = getArguments().getParcelableArrayList(MODEL_LIST);
}
}
Problemi correlati
- 1. Test unità Android: Bundle/Parcelable
- 2. Come passare disegnabile utilizzando Parcelable
- 3. Android | Unmarshalling tipo sconosciuto durante l'utilizzo Parcelable dati in bundle
- 4. Cosa significa Android con "tutti i tipi di dati parcelable" e come posso utilizzare questi dati?
- 5. non può passare un ArrayList <Parcelable> ad un'attività
- 6. Parcelable Android riferimento a un'altra dipendenza circolare Parcelable
- 7. Come utilizzare il metodo showAlert in Android?
- 8. Android Parcelable in Kotlin
- 9. Come funziona il callback di ResultReceiver Android se è passato attraverso un pacchetto come Parcelable?
- 10. Parcelable and inheritance in Android
- 11. Come utilizzare il metodo Skin.AddPageMessage()?
- 12. Come definire parcelable del tipo di interfaccia nel file .aidl?
- 13. Android ArrayList <MyObject> passare come parcellizzabile
- 14. Passare un oggetto come parametro e modificarlo all'interno del metodo
- 15. Come passare il parametro del dizionario al metodo web-api?
- 16. Android Intent che passa oggetto parcelable e passa stringa Json
- 17. Scopo del describeContents() dell'interfaccia Parcelable
- 18. HashMap Android in bundle?
- 19. Come utilizzare il metodo Moq.MockRepository.Of()
- 20. Android "java.lang.RuntimeException: Parcelable encounteredClassNotFoundException lettura di un oggetto Serializable"
- 21. Passare elenchi di array in Android
- 22. ArrayList non può essere lanciato a Parcelable
- 23. Passare gli ascoltatori tramite Bundle in AlertDialogFragment - è possibile?
- 24. Passare ArrayList <? implementa Parcelable> to Activity
- 25. Il metodo onSaveInstanceState (Bundle) viene chiamato dopo onPause()?
- 26. Come utilizzare il metodo prepareForReuse
- 27. Android Archivia un oggetto Parcelable in SQLite
- 28. Come estendere la classe Android che implementa l'interfaccia Parcelable?
- 29. Android Parcelable in Kotlin: CREATOR non trovato nella classe di dati Parcelable
- 30. Come utilizzare il metodo Paginate
chiedo informazioni su getParcelable, per cosa? – yital9
restituirà una matrice dell'oggetto che hai passato – MAC
scusa, senti la differenza tra getParcelableArrayExtra e getParcelable? – yital9