2012-09-27 18 views
9

ho e app con più di 10 attività e vorrei sovrascrivere il metodo onResume() con lo stesso codice in tutti loro.override metodo onResume() di tutte le attività Android

So che posso ignorare questo metodo in ogni attività, ma sto cercando una soluzione efficiente.

Inoltre vorrei all'interno di questa onResume mostrano un messaggio a seconda quale attività sta venendo, per esempio: se ci si trova nella MainActivity voglio che questo comune onResume rileva che proviene da questa attività e mostrano I'm coming from MainActivity

Grazie.

+0

Ma, se estendiamo BaseClass, non possiamo estendere qualsiasi altra classe, in modo da poter essere la mia soluzione quella migliore? – Shrikant

+0

@Shrikant No, non è perché non funziona. Puoi definire 'onResume' lì ma non puoi inserire alcun codice comune. – zapl

+0

qualsiasi altra classe come cosa, dal momento che stavi per estendere Attività? – njzk2

risposta

18

si dovrebbe Override attività in un BaseClass e utilizzare il BaseClass invece di attività nelle altre attività:

public class BaseClass extends Activity 
{ 

    public void onResume() 
    { 
    // common code 
    } 
} 

public class OtherClass extends BaseClass 
{ 
} 
+0

Ma, se estendiamo BaseClass, non possiamo estendere nessun'altra classe, quindi la mia soluzione potrebbe essere la migliore? – Shrikant

+0

Perché è necessario estendere altre classi? in precedenza si sta estendendo solo dall'attività na ?? –

+0

@EldhoseMBabu è OtherClass estendere BaseClasas – Blackbelt

0

Fai un'attività genitore e sovrascrivere la sua onResume, quindi non tutte le 10 attività estendono il genitore creted. .

+0

Ora vorrei all'interno di questa onResume mostrano un messaggio di seconda che l'attività è in arrivo, per esempio: se ci si trova nella MainActivity voglio che questo comune onResume rileva che è proveniente da questa attività e mostra "Vengo da MainActivity" – user1677266