Ver Mensaje Individual
  #2  
Viejo 12/03/10, 09:13:59
Array

[xs_avatar]
leor285 leor285 no está en línea
Usuario novato en la web
 
Fecha de registro: feb 2009
Mensajes: 6
Modelo de smartphone: Diamond

Gente, pude resolver los problemas resultaron ser boludeces.. y eran las 2 x lo mismo, habia instanciado la clase del hilo como Runnable y era Thread.. jaja soy un pelotudo
Ahora mi problema es otro, lo q me pasa es q el cronometro cuenta hasta 2 y se detine.. les dejo el Codigo fuente x si alguno se da cuenta de q puede ser..

Clase Principal
Código:
package Android.Com.Cronometro;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class Cron extends Activity {
    /** Called when the activity is first created. */
    public TextView txtTiempo;
    Hilo cron;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        txtTiempo = (TextView) findViewById(R.id.ConTiempo);
        final Button btn = (Button) findViewById(R.id.BtnAccion);
        cron = new Hilo(txtTiempo);
        cron.start();
        
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(btn.getText().equals("Iniciar Cronometro"))
                {
                    cron.continuar();
                    btn.setText("Pausar");
                }
                else
                {
                    if(btn.getText().equals("Pausar"))
                    {
                        cron.pausar();
                        btn.setText("Continuar");
                    }
                    else
                    {
                        cron.continuar();
                        btn.setText("Pausar");
                    }
                }
            }
        });
        
    }
}
Clase del Hilo
Código:
package Android.Com.Cronometro;

import android.widget.TextView;

public class Hilo extends Thread{

    TextView tvTime;
    private boolean detenido = false;
    private boolean pausado =true;

    public Hilo(TextView t) {
        tvTime = t;
    }
    int minutos=00, segundos=00, horas=00;
    public void run()
    {
        while(!this.detenido)
        {
            while(!this.pausado)
            {
                try {
                    if (segundos == 59) {
                        segundos = 00;
                        minutos++;
                    }
                    if (minutos == 59) {
                        minutos = 00;
                        horas++;
                    }
                    segundos++;
                    tvTime.setText(horas + ":" + minutos + ":" + segundos);
                    sleep(1000);
                } catch (Exception ex) {
                    ex.printStackTrace();
                }
            }
        }
    }
        public void pausar()
        {
            this.pausado = true;
        }

        public void continuar()
        {
            this.pausado = false;
        }

        public void detener()
        {
            this.pausar();
            this.detenido = true;
        }
            public boolean isDetenido() {
            return detenido; 
        }

        public boolean isPausado() {
            return pausado;
        }
}
El codigo esta bastante "beta", es mi primer programa x ahora solo quiero hacerlo andar.. desp me pondre a depurar detalles y hacer la version final.. Muchas gracias!

Última edición por leor285 Día 12/03/10 a las 16:44:29.
Responder Con Cita