Il concetto è lo stesso di un'applicazione standard (non Xamarin).
È possibile utilizzare Intent#putExtra(String, Parcelable)
per passare qualsiasi oggetto che implementa l'interfaccia Parcelable
come extra.
L'interfaccia Parcelable
è un po 'complessa, quindi assicurati di leggere la documentazione per assicurarti che la tua classe sia conforme ai requisiti. È inoltre possibile controllare lo this SO question per ulteriori informazioni sulla creazione di una classe Parcelable
.
Non è possibile passare un riferimento oggetto tramite Intent
. Questo perché le attività sono progettate per funzionare in modo completamente indipendente l'una dall'altra. Gli utenti possono lanciare la tua attività in background mentre svolgono altre attività, quindi è del tutto possibile (e molto probabile) che le variabili della tua attività vengano raccolte automaticamente. Quando l'utente torna in seguito alla tua attività, dovrebbe essere in grado di ricreare il suo stato.
Se è davvero necessario passare direttamente un riferimento a un oggetto, è possibile farlo rendendo tale oggetto una variabile statica. Mentre questo è un modo rapido e sporco per risolvere il problema di ottenere dati da un'attività a un'altra, non risolve il problema della variabile potenzialmente raccolta di dati inutili a un certo punto, ed è generalmente una scelta di progettazione scadente.
fonte
2014-09-25 19:42:57
È possibile utilizzare un componente nello store Xamarin denominato Simple storage, in pratica si fa il duro lavoro. https://components.xamarin.com/view/simple-storage – InitLipton