PDA

Ver la Versión Completa : ProgressBar entre dos fechas


kaiser75
19/11/18, 12:31:47
Vereis, tengo un progressBar que va mostrando el progresso segun avanzan los dias y meses, lo que intento hacer es poner el setProgress() entre dos fechas concretas, es posible?. Por ejemplo entre el 10 de Enero "setProgress(0)" y el 20 de Abril "setProgress(100)".

mocelet
19/11/18, 14:52:01
Necesitas calcular la duración del periodo completo, es decir la diferencia entre fecha inicial y final (total).

También calcular el tiempo desde la fecha inicial a la fecha actual (transcurrido).

Sacar el número del 0 al 100 es fácil: progreso = (100 * transcurrido) / total

Por supuesto, si la fecha actual es posterior a la de finalización el progreso es 100, y si es anterior es 0, no hace falta hacer ninguna operación ahí.

La unidad da igual mientras que sea la misma, es decir, no tienen por qué ser días, pueden ser milisegundos desde el punto de referencia (el famoso epoch). Sacar el timestamp es fácil si tienes las fechas y no necesitas complicarte calculando número de días salvo que te haga falta para otra cosa. Restas milisegundos y listo.