Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/01/2011, 13:27
yop289
 
Fecha de Ingreso: diciembre-2010
Mensajes: 61
Antigüedad: 13 años, 9 meses
Puntos: 4
Ejecutar función cada segundo

Hola;

Necesito ejecutar la siguiente funcion cada 1000 milesegundos y sólo se puede ejecutar cuando la llamo por primera vez desde otra parte del código.

Código:
  public  TimerTask updateCalculos(){
    
    	//mCalculosDisplay.setText("hola esto es una prueba");
	    //   	
    	final Calendar fecha1 = Calendar.getInstance();
      	fecha1.set(mYear, mMonth + 1, mDay);
      	final Calendar fecha2 = Calendar.getInstance();
    	fecha2.set(bYear, bMonth + 1, bDay);
    	
               	 
    	        // Obtenemos los milisegundos
    	        long mls1 = fecha1.getTimeInMillis();
    	        long mls2 = fecha2.getTimeInMillis();
    	         
    	        // calculamos la diferencia
                long dif = mls2 - mls1;
    	         
    	        // calculamos la diferencia en segundos
    	        long difS = dif / 1000;
    	
    	      
    	        
    	        mCalculosDisplay.setText(
    	                new StringBuilder()
    	                          .append(difS).append(" segundos").append("\n")
    	               
    	         );
    	        
    	       
    	               RepeatCalculos();        
    	       
        	
    }
He intentado usar esta opcion pero me casca la aplicación.

Código:
   public void RepeatCalculos() {
       
       timer = new Timer();
       timer.schedule(updateCalculos(),
                      0,        //initial delay
                      1*1000);  //subsequent rate
   }

En fins lo que necesito es poder ejecutar un setInterval(funcion(),1000) pero no encuentro la solución, espero que alguien me pueda echar una mano y no al cuello.

Saludos