Acceder

Ver la Versión Completa : Actualizar texto en EditText


C0nqv1st
08/03/11, 22:22:57
Buenas, estoy haciendo un pequeño programa, un contador, pero tengo problemas con los timers, he seguido tutoriales y he hecho uno, pero a la hora de ejecutarse me da un error y el programa se cierra, alguien puede ayudarme? Os dejo el código para que podáis decirme donde están los fallos.

package org.me.androcronometro;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import java.util.Timer;
import java.util.TimerTask;

/**
*
* @author C0nqv1st
*/
public class MainActivity extends Activity {

private EditText num;
private Button boton;
int valor;
Timer timer = new Timer();

void time(){

TimerTask timertask = new TimerTask(){
public void run(){
valor = Integer.parseInt(num.getText().toString()) + 1;
num.setText(""+valor);
}
};
timer.schedule(timertask, 0, 1000);

}

override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
super.setContentView(R.layout.main);

num = (EditText) findViewById(R.id.num);
boton = (Button) findViewById(R.id.boton);

boton.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
time();
}
});

}

}


Muchísimas gracias!

hecsagis
09/03/11, 19:04:10
Estaría bien saber que error te da, así podremos localizar más rápido el problema

C0nqv1st
09/03/11, 19:34:59
Cierto, perdón por el despiste, el error que me da es este:

The application org.me.androcronometro (process org.me.androcronometro) has stopped unexpectly. Please try again

mekawendie
09/03/11, 20:15:10
Hola!

Lo primero de todo creo que debes mirar cómo depurar con la herramienta que utilices.
Si es Eclipse te recomiendo que te mires algún tutorial como este: http://www.vogella.de/articles/EclipseDebugging/article.html

Además también deberías leer, leer y leer porque por el código que has puesto (no te ofendas :ok:) veo que no has leído mucho porque eso ni compila :)
Después de llevar un tiempo programando en android te recomiendo que vuelvas a ver este post para que veas de nuevo tu código y así sabrás a qué me refiero .

Esto no te lo tomes a mal pero creo que deberías ir más despacio y, por lo menos, ir enterándote de qué es lo que pones y cómo poder depurar errores (esto es imprescindible).
Empieza por lo básico, tipos de controles, layouts, listeners básicos, etc...

Lo segundo y ya metiéndonos en el tema, si no vas a introducir texto en cajas de texto es mejor que pongas una etiqueta que en android es TextView pero en este caso que va a ser un cronómetro puedes utilizar un Chronometer que te simplificará muchísimo las cosas. Además, No se recomienda utilizar timers para cronómetros, es mejor trabajar con el reloj del sistema directamente.

Tienes 2 simples ejemplos aquí:
http://stackoverflow.com/questions/2536882/create-an-incrementing-timer-in-seconds-in-0000-format
http://stackoverflow.com/questions/4591149/create-a-simple-digital-timer-in-android

Un ejemplo completo de cronómetro sencillo:
http://android-pro.blogspot.com/2010/06/android-chronometer-timer.html


Un saludo, bienvenido a este mundo y ya sabes, a leer, leer y leer !!! :ok: