Aller au contenu

Faire clignoter un texte


Ilkar

Recommended Posts

Bonjour

Je souhaite changer le texte d'un TextView toutes les secondes. Voici le code que j'utilise

/** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);

       setContentView(R.layout.main);
       dtgTextView= (TextView) findViewById(R.id.TextView01); 

       dtgTextView.setText("Depart");

       TimerTask myTimerTask = new TimerTask(){
           @Override
           public void run()
           {
               String str = (String) dtgTextView.getText();
               if (str.equalsIgnoreCase("Depart")){
                   dtgTextView.setText("Fin");
               }else{
                   dtgTextView.setText("Depart");
               }
           }           
       };

       myTimer.scheduleAtFixedRate(myTimerTask, 0, 1000);

   }
}

Et ca plante sur la ligne : myTimer.scheduleAtFixedRate(myTimerTask, 0, 1000);

Une idée ?

Merci

Lien vers le commentaire
Partager sur d’autres sites

J'ai trouve

J'ai oublie d'initialiser myTimer = new Timer();

Mais cela ne clignote pas pour autant. Voici mon code légèrement modifié :

public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       final int i = 0;
       setContentView(R.layout.main);
       dtgTextView= (TextView) findViewById(R.id.TextView01); 

       dtgTextView.setText(dep);
       myTimer = new Timer();
       TimerTask myTimerTask = new TimerTask(){
           int ref = i;
           @Override
           public void run()
           {

               String etat = dtgTextView.getText().toString();
               if (etat.equalsIgnoreCase("Depart")){
                   dtgTextView.setText("Fin");
                   Log.i(TAG,"Fin");
               }else{
                   dtgTextView.setText("Depart");
                   Log.i(TAG,"Depart");

               }

           }           
       };
       myTimer.scheduleAtFixedRate(myTimerTask, 1000, 1000);
   }

Le Log montre bien une alternance Depart/Fin/Depart mais le texte ne change pas.

Peu-être faut-il rafraichir la fenêtre si oui comment ?

merci

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...