Odio la classe interiore.Android: come aggiornare un'interfaccia utente da AsyncTask se AsyncTask si trova in una classe separata?
Ho un'attività principale che avvia AsyncTask "a vita breve".
AsyncTask è in un file separato, non è una classe interna di attività principale
Ho bisogno compito asincrona aggiorna un textView da attività principale.
so di poter aggiornare un TextView da onProgressUpdate, se AsyncTask è una classe interna
Ma come da una, indipendente, task esterno asincrono?
UPDATE: Questo appare come lavoro:
In acitivty io chiamo il compito
backgroundTask = new BackgroundTask(this);
backgroundTask.execute();
Nel costruttore ho
public BackgroundTask(Activity myContext)
{
debug = (TextView) myContext.findViewById(R.id.debugText);
}
dove il debug era un campo privato di AsyncTask.
Così onProgressUpdate posso
debug.append(text);
Grazie per tutti voi suggerimenti
Significa che in un'altra classe, si desidera accedere all'interfaccia utente? –
Sì. Devo aggiornare un TextView da AsyncTask. – realtebo
È possibile passare il contesto nel costruttore e con il cast nel ActivityClass, è possibile modificare textView utilizzando il metodo runOnUIThread. –