2010-07-09 10 views
5

Possiedo un'attività di contatto derivata da ListActivity, che visualizza l'elenco di contatti e al clic dell'elemento, viene inizializzata una nuova attività di messaggio attività derivata da ListActivity.Come ottenere "chiamando" l'istanza dell'attività da chiamata Attività?

Ora lo so, posso raggruppare alcune informazioni in Bundle e passarle prima di creare attività, ma c'è un modo per ottenere l'istanza di "ContactActivity" nel metodo onCreate di "MessageActivity"?

risposta

4

No, mi spiace, non è disponibile alcun mezzo per accedere all'attività che ha chiamato startActivity() per l'attività corrente. Dopo tutto, l'attività originale potrebbe non essere nella tua applicazione (ad es. Schermata iniziale).

+0

In ogni caso, grazie, il problema è che non riesco a spostare oggetti personalizzati tra attività tramite Pacchetto, Solo pacchetti accettati, stringhe ecc., Ma non classi di dati aziendali. –

+5

Non è vero, se le tue classi di dati implementano 'Serializable' o' Parcelable' puoi passarle con il 'Bundle' – CaseyB

5

Sì, è possibile eseguire una soluzione alternativa. Nel tuo messaggio Attività dichiara un attributo statico del tipo della tua classe di contatto, quindi imposti quell'attributo con il contatto selezionato quando si fa clic sull'elenco e quindi si avvia l'attività del messaggio. Quando onCreate viene eseguito nell'attività del messaggio, è possibile utilizzare tale attributo.

Problemi correlati