sistema personalizar liberar espacio control como centro aparece activar iphone objective-c ios xcode uiprogressview

personalizar - Cómo usar la barra de progreso en la aplicación de iPhone



no me aparece el centro de control iphone (5)

En la aplicación de mi iPhone estoy descargando algunos datos de un servidor FTP. Para mostrar la acción estoy usando UIActivityIndicator . Si pongo UIProgressView allí en lugar de UIActivityIndicator , será más apropiado. ¿Cómo uso UIProgressView mientras descargo algunos datos? ¿Alguien puede darme un enlace de tutorial o código de ejemplo? Gracias por adelantado.


Es bastante simple. Solo necesita establecer el valor apropiado del progress de la propiedad de UIProgressView .

En delegado de NSURLConnection , debe recibir la cantidad de datos que está esperando para descargar y actualizar el progress durante la descarga. Progress se representa mediante un valor de punto flotante entre 0.0 y 1.0, inclusive, donde 1.0 indica la finalización de la tarea.


Primero creas IBOutlet en el archivo .h

IBOutlet UIProgressView * threadProgressView;

Luego, en el archivo .m en viewdidload, primero establezca el progreso en 0.0 y luego llame al método makeMyProgressMoving

threadProgressView.progress = 0.0; [self performSelectorOnMainThread:@selector(makeMyProgressBarMoving) withObject:nil waitUntilDone:NO];

luego agrega el siguiente método

- (void)makeMyProgressBarMoving { float actual = [threadProgressView progress]; if (actual < 1) { threadProgressView.progress = actual + ((float)recievedData/(float)xpectedTotalSize); [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(makeMyProgressBarMoving) userInfo:nil repeats:NO]; } else{ } }

También dé su opinión para la respuesta. ¿Te es útil?


Puede visualizar el progreso de la barra de progreso con esta línea de código

-(void) connection:(NSURLConnection *) connection didReceiveData:(NSData *) data { if (file) { [file seekToEndOfFile]; progressView.progress = ((float)recievedData / (float) xpectedTotalSize); } [file writeData:data]; recievedData += data.length; NSLog(@"Receiving Bytes: %d", recievedData); }


Una de las opciones es AFNetworking. AFURLConnectionOperation también le permite transmitir fácilmente cargas y descargas, manejar los desafíos de autenticación, controlar el progreso de carga y descarga, y controlar el comportamiento o las solicitudes de almacenamiento en caché.


observado: self.progressionBalance.progress = 5.0 / 10.0;

Debes establecer decimal.