tengo uilabel y un usuario en una vista. Quiero establecer el tiempo de la etiqueta usando slider.range of slider es 00:00:00 a 03:00:00. significa 3 horas. y el deslizador de interbloqueo es de 0.5 minutos. También cómo mostrarlo. Deseo que el temporizador se ejecute incluso si la aplicación está cerrada.cómo mostrar la cuenta atrás en uilabel en iphone?
Respuesta
En primer lugar, no hay forma de mantener el temporizador encendido después de cerrar la aplicación. Las aplicaciones en segundo plano simplemente no están permitidas en el iPhone. Hay formas de simularlo con un temporizador (guarde una marca de tiempo cuando la aplicación se cierra y compruébela con el momento en que se inicia la copia de seguridad), pero no manejará el caso en que se agote el tiempo antes de que la aplicación se inicie de nuevo arriba.
En cuanto a la actualización de UILabel con la cuenta atrás, un NSTimer probablemente funcionaría. Algo como esto, suponiendo que tiene un temporizador NSTimer, un int secondsLeft, y una countdownLabel UILabel en su clase:
Crear el temporizador:
timer = [NSTimer scheduledTimerWithTimeInterval: 1.0 target:self selector:@selector(updateCountdown) userInfo:nil repeats: YES];
El método updateCountdown:
-(void) updateCountdown {
int hours, minutes, seconds;
secondsLeft--;
hours = secondsLeft/3600;
minutes = (secondsLeft % 3600)/60;
seconds = (secondsLeft %3600) % 60;
countDownlabel.text = [NSString stringWithFormat:@"%02d:%02d:%02d", hours, minutes, seconds];
}
I hacer algo similar en una de mis aplicaciones, pero no tengo el código a la mano en este momento.
Este código es incorrecto.
timer = [NSTimer scheduledTimerWithInterval: 1.0 target:self selector:@selector(updateCountdown) userInfo:nil repeats: YES];
Debe ser.
timer = [NSTimer scheduledTimerWithTimeInterval: 1.0 target:self selector:@selector(updateCountdown) userInfo:nil repeats: YES];
puede mantener su temporizador en funcionamiento cuando hizo su solicitud entra en el fondo,
como craver @shawn u dijo que no puede hacer esto, pero usted puede hacer esto cuando la aplicación entra en el fondo ("no termina") que es un evento diferente applicationDidEnterBackground y con eso necesitarás algunos GCD de subprocesamiento múltiple (despacho de gran centralización).
plase consulte este enlace
- 1. Acción en UILabel en iphone
- 2. Temporizadores de cuenta atrás en jQuery
- 3. iPhone UILabel sizeWithFont:
- 4. javascript/hora jQuery cuenta atrás
- 5. Mostrar iPhone copia corte menú de pasta sobre UILabel
- 6. PHP Cuenta atrás para la fecha
- 7. Restablecer la cuenta atrás en la tarea de apio
- 8. Cuenta atrás con la vista de texto
- 9. ¿Cómo puedo hacer una cuenta atrás jQuery
- 10. Redirigir 10 segundos Cuenta atrás
- 11. ¿Cómo hacer la primera letra en mayúscula en un UILabel?
- 12. segundos temporizador de cuenta atrás
- 13. Cómo mostrar el asterisco de superíndice en UIlabel
- 14. Mostrar texto en un UILabel en formato digital?
- 15. Cuenta atrás para Navidad con Joda-Time
- 16. Simulando el botón Atrás de la UINavigationController en el iPhone
- 17. ¿Cómo mostrar el botón Atrás en RootViewController del UINavigationController?
- 18. Cómo analizar y mostrar hipervínculos (número de teléfono/direcciones de correo electrónico, etc.) en UILabel?
- 19. iPhone: ocultar/mostrar la barra de herramientas
- 20. cómo hacer un bucle en la lista de Python (cuenta atrás)
- 21. ¿Cómo hacer un temporizador de cuenta atrás en la aplicación web asp.net (C#)?
- 22. Symfony2: ¿Cómo mostrar el nombre de la cuenta de administrador al suplantar la cuenta de usuario?
- 23. Crear trazo de texto para UILabel iphone
- 24. UILabel - configuración de fuente - tipo de letra programáticamente en iPhone
- 25. Cómo mostrar la cuenta regresiva usando PHP y MySQL
- 26. C# Cuenta atrás simple: ¿Qué estoy haciendo mal?
- 27. Mostrar imágenes en línea en iPhone, iPad
- 28. Javascript, temporizador de cuenta atrás y texto de pantalla
- 29. Cómo mostrar "x días atrás" escriba la hora usando Humanize en la plantilla de Django?
- 30. django: mostrar usuarios de grupo cuenta en administración
¿cuál es el valor de secondsLeft. –
Esa sería la cantidad de segundos que desea que corra el temporizador, lo más probable es que la configuración esté basada en el valor del UISlider. –
como dijo shawn, no puedes mantener el temporizador encendido después de que se cierre la aplicación, así que asegúrate de mantener un registro de la hora de inicio cuando tu aplicación envíe UIApplicationWillTerminateNotification (creo que es eso, estoy oxidado). La única solución para un temporizador que se agota cuando la aplicación no se está ejecutando es usar notificación de inserción. pero eso puede ser caro. – pxl