Foros del Web » Programando para Internet » Android »

Duda con Cronómetro

Estas en el tema de Duda con Cronómetro en el foro de Android en Foros del Web. Hola, ¿Cómo se hace para que el cronómetro no empieza a funcionar hasta que se llame al método .start() ? Es que tengo uno que ...
  #1 (permalink)  
Antiguo 20/10/2011, 10:31
Avatar de javih  
Fecha de Ingreso: agosto-2011
Mensajes: 201
Antigüedad: 13 años, 4 meses
Puntos: 12
Duda con Cronómetro

Hola,

¿Cómo se hace para que el cronómetro no empieza a funcionar hasta que se llame al método .start() ?

Es que tengo uno que está invisible y hasta que no se hace clic sobre el botón no se llama a .start(), el asunto es que cuando se llama a ese método el crónometro se hace visible pero no comienza desde 0 segundos sino desde que comenzó la activity, y no sé por qué es.

He probado a crear el objeto cronómetro dentro del listener del botón en vez de en el onCreate de la Activity pero aún así no lo resolví.

Saludos
  #2 (permalink)  
Antiguo 20/10/2011, 16:58
Avatar de zero_master  
Fecha de Ingreso: junio-2011
Ubicación: Leon, Gto
Mensajes: 290
Antigüedad: 13 años, 5 meses
Puntos: 74
Respuesta: Duda con Cronómetro

Nunca e usado el cronometro o el digitalclock en android, pero talvez tenga alguna propiedad de .set() no lo crees?; si fuera el caso que lo tenga seria mucho mas facil ya que podrias indicarle que se reinicie a 0 de nuevo y le das despues start(). Bueno esa es mi idea no podria ir a checarlo al eclipse ya que me anda fallando por andar instalando MatLab para otros proyectos jajaja maldita libreria de java
  #3 (permalink)  
Antiguo 21/10/2011, 09:26
Avatar de javih  
Fecha de Ingreso: agosto-2011
Mensajes: 201
Antigüedad: 13 años, 4 meses
Puntos: 12
Respuesta: Duda con Cronómetro

gracias, lo había arreglado más o menos así, utilicé este setter (setBase())

Código:
cronometro.setBase(SystemClock.elapsedRealtime());
Lo que ahora necesito es hacer el resume, como con el mediaPlayer, es decir que al pulsar el botón play de nuevo al igual que continúa la reproducción en el punto donde se había pausado que el cronómetro también lo haga.

para el mediaPlayer utilicé seekTo(int), lo que no sé sí lo podré hacer con setBase o con algún otro setter.

Código HTML:
mplayer.seekTo((Integer) length);
				mplayer.start();

Saludos
  #4 (permalink)  
Antiguo 21/10/2011, 09:42
Avatar de javih  
Fecha de Ingreso: agosto-2011
Mensajes: 201
Antigüedad: 13 años, 4 meses
Puntos: 12
Respuesta: Duda con Cronómetro

Lo hice así y perfecto:

para cuando se pulsa el pause:

Código:
lengthCrono = SystemClock.elapsedRealtime();
			cronometro.stop();
y para continuar:

Código:
mplayer.seekTo((Integer) length);
				cronometro.setBase(cronometro.getBase() + SystemClock.elapsedRealtime() - lengthCrono);
				mplayer.start();
				cronometro.start();
Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:06.