Autore Topic: Timer  (Letto 4014 volte)

vincenzodicicco

  • Visitatore
Timer
« il: 11 Giugno 2010, 01:52:45 CEST »
0
Salve a tutti quanti. Ho cercato un po in rete su come simulare un timer in android.Ma non ho trovato nulla, o meglio niente di facile comprensione xD, per fare ciò.Mi basterebbe anche un esempio se qualcuno ne conosce, il risultato che vorrei ottenere e quello di avviare un calcolo ogni tot di millisecondi.Sul developer di google ho trovato questa risorsa alla classe Timer  Timer | Android Developers ma non sono riuscito a capire se è quello che cerco o meno, ne tantomeno sono riuscito ha provarlo. grazie a tutti per la disponibilità.



PS
Non trovo il pulsante Topic Risolto, qualcuno saprebbe dirmi dove si trova? :D

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Timer
« Risposta #1 il: 11 Giugno 2010, 10:22:58 CEST »
+1
La classe Timer è una classe Java, per cui potresti cercando "Timer java" troveresti un bel pò di esempi al riguardo.
Ad ogni modo, l'utilizzo è molto semplice:

Codice (Java): [Seleziona]
                int startUp = 2000;     // millisecondi di attesa per fare partire il timer
                int periodo = 1000;     // millisecondi di attesa per la ripetizione del timer
               
                Timer timer = new Timer();      //timer
               
                //il metodo run viene eseguito ad ogni scadenza del timer
                timer.scheduleAtFixedRate(
                        new TimerTask() {
                                int i=0;
                               
                                public void run() {
                                        System.out.println(i++);
                                }
                        },
                        startUp, periodo
                );

Questo esempio inizializza un timer che viene eseguito ad un intervallo regolare (periodo) e che per la prima volta parte dopo startUp millisecondi.
In generale, se la classe che cerchi è una classe nativa java trovi moltissimi esempi al riguardo, non cercando specificatamente per Android.
Spero di esserti stato d'aiuto.
« Ultima modifica: 11 Giugno 2010, 11:13:34 CEST da JD, Reason: usate i bbcode java e xml!! XD »
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

vincenzodicicco

  • Visitatore
Re:Timer
« Risposta #2 il: 11 Giugno 2010, 12:03:13 CEST »
0
Era  proprio quello che cercavo grazie mille!!! mi viene molto scomodo cercare quello che mi serve per android. Il principale motivo, purtroppo, sono le mie conoscenze molto basilare di java che spesso non mi fanno capire quello che leggo.ad ogni modo grazie davvero!!!

Offline asterix07

  • Nuovo arrivato
  • *
  • Post: 45
  • Respect: 0
    • Mostra profilo
Re:Timer
« Risposta #3 il: 14 Novembre 2010, 15:14:15 CET »
0
Io ho provato il codice postato per provarne e capirne il funzionamento ma la system.out non mi stampanulla. Dove sbaglio?

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Timer
« Risposta #4 il: 14 Novembre 2010, 16:06:57 CET »
0
Io ho provato il codice postato per provarne e capirne il funzionamento ma la system.out non mi stampanulla. Dove sbaglio?

Credo che l'esempio sopra riportato sia generico di Java e comunque solamente destinato a spiegare il concetto, perchè system.out praticamente non si usa mai sviluppando Android. Per output di test e debug si usa Log.e e affini. Però se lo vuoi vedere, a questa pagina Android Debug Bridge | Android Developers nella sezione Viewing stdout and stderr trovi come fare.

Più in generale, se cominci adesso a sviluppare qualcosina con Android, ti consiglio di partire con i tutorial Hello View (Hello, Views | Android Developers) così prendi confidenza con l'ambiente.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:Timer
« Risposta #5 il: 15 Novembre 2010, 10:14:42 CET »
0
beh, in realtà la System.out stampa nel logcat comunque, per cui dovresti vedere il messaggio taggato come system.out per l'appunto.
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline asterix07

  • Nuovo arrivato
  • *
  • Post: 45
  • Respect: 0
    • Mostra profilo
Re:Timer
« Risposta #6 il: 15 Novembre 2010, 10:29:25 CET »
0
Si si grazie 1000, ho notato che la println viene eseguita nel LogCat

Offline ilGiudicatore

  • Nuovo arrivato
  • *
  • Post: 9
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg p500
  • Sistema operativo:
    windows Xp, eclipse
Re:Timer
« Risposta #7 il: 03 Gennaio 2012, 20:19:19 CET »
0
ho provato a farlo girare, al posto di systemout ho messo come riferimento una TextView che aumenta all'aumentare della i. Però l'applicazione si chiude automaticamente dandomi errore. PERCHE'??

Offline alexAndroid

  • Utente normale
  • ***
  • Post: 185
  • Respect: +27
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Giò
  • Sistema operativo:
    Ubuntu 11.10; Windows XP
Re:Timer
« Risposta #8 il: 09 Gennaio 2012, 17:01:07 CET »
0
Perchè l'interfaccia grafica è possibile modificarla soltanto tramite il UI Thread:  http://developer.android.com/resources/articles/painless-threading.html
Sei stato aiutato oppure il tuo problema è stato risolto? Allora premi il tasto THANKS E' un modo utile e carino per ringraziare chi ti è stato di aiuto.