Ho un'activity e vorrei che ogni tot di secondi faccia un refresh..volevo sapere se esiste qualche altro metodo oltre l'utilizzo dei thread o la chiusura e riapertura dell'activity per effettuare ciò..per caso avete idee?
Ho un'activity e vorrei che ogni tot di secondi faccia un refresh..volevo sapere se esiste qualche altro metodo oltre l'utilizzo dei thread o la chiusura e riapertura dell'activity per effettuare ciò..per caso avete idee?
Se non vuoi usare un Thread, l'unico altro modo che mi viene in mente è usare la classe Handler, con il metodo postAtTime() che prende comunque un oggetto Runnable, ma semplicemente esegue il metodo run() del Runnable solo dopo l'intervallo di tempo specificato nel postAtTime().
Naturalmente per farlo ogni tot secondi devi risettarlo ad ogni esecuzione...
La mia katana: Slackware 13.1
La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
Il mio sito: Follow the rabbit (con la sua App)
Devi rifreshare la view e i dati contenuti?
Non serve chiudere e riaprire l'app. basta che usi gli handler ( come ben suggerito qui sopra ) E fai partire un metodo che refresha il contenuto con setContentView e ripopola i dati contenuti in esso
Twitter @veke87
E' possibile utilizzare invece un metodo timer con l'handler e la proprietà schedule? una guida sull'utilizzo degli handler?
Devi fare qualcosa del genere:
x1public class ClasseUpdate{
2
3Handler handler = new Handler();
4
5private Runnable mUpdateTimeTask = new Runnable() {
6public void run() {
7//aggiorni quello che devi aggiornare qui
8
9//se devi riaggiornare tutto tra altri 500 millisecondi, fai la stessa chiamata che ha iniziato il primo task
10if(nuovotask)
11handler.postDelayed(mUpdateTimeTask, 500);
12
13}
14};
15
16
17//da qualche altra parte fai, per iniziare il tutto
18handler.postDelayed(mUpdateTimeTask, 500); //serve per eseguire un mUpdateTimeTask tra 500 millisecondi
19
20}
Ultima modifica di eafkuor; 16-08-10 alle 21:52