È possibile dichiarare una classe che estende Attività all'interno di un'altra classe di attività? Se lo è, come potrei registrare quella classe nel manifest? Inoltre, è qualcosa che può essere ragionevolmente fatto o è una cattiva idea?Classe attività interna annidata in Android
Stavo pensando a qualcosa di simile
class ListClass extends ListActivity{
...
ArrayList items;
class ItemClass extends Activity{
...
Item item;
@Override
onCreate(){
Integer pos = getIntent().getExtras().getInt("pos");
item = items.get(pos);
}
}
@Override
onItemClick(int position){
startActivity(new Intent(this, ItemClass.class).putExtra("pos", position));
}
}
Nota la sintassi non è corretta al 100%, ovviamente, per lo pseudocodice.
Perché vorresti farlo? – EboMike
Sto cercando di pensare al modo migliore per dare il mio ItemClass agli oggetti nella mia lista ArrayList senza un servizio di intermediazione. – Falmarri
Ricorda che le attività possono essere distrutte in qualsiasi momento (c'è anche un'opzione di debug per forzare che ciò accada). Qualsiasi attività precedente potrebbe essere distrutta in qualsiasi momento. Non puoi fare affidamento su attività precedenti. Passa i dati attraverso l'intento o tramite un fornitore di contenuti o attraverso le preferenze condivise. – EboMike