mostrar alerta con el indicador de actividad y Lable (modificable)

hago un juego que comienza a mostrar Indicador de actividad Indicador inferior de actividad y visualización UiLable con text es: – Listo después de 2 El text secuencial es: – Establecer y después de 2 El text secuencial es: – Ir .

ahora uso una alerta 3 diferente para mostrar esto.

¿Puedo hacer esto con solo una alerta?

Creo que quieres este tipo de alerta introduzca la descripción de la imagen aquí

para hacer esto, testing esto

Archivo .h

#import <UIKit/UIKit.h> @interface ViewController : UIViewController { IBOutlet UILabel *Lable; NSTimer *Timer1; NSTimer *Timer2; UIActivityIndicatorView *Process; UIAlertView *Game; } -(IBAction)start:(id)sender; @end 

Archivo IN .M

 #import "ViewController.h" @interface ViewController () @end @implementation ViewController int i; - (void)viewDidLoad { [super viewDidLoad]; } -(IBAction)start:(id)sender { i=0; Game=[[UIAlertView alloc]initWithTitle:@"Please Wait" message:@"\n" delegate:self cancelButtonTitle:nil otherButtonTitles: nil]; Process=[[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge]; Process.frame=CGRectMake(129, 50, 30, 27); [Process startAnimating]; Lable=[[UILabel alloc]initWithFrame:CGRectMake(102, 80, 80, 30)]; Lable.text=@"Ready"; Lable.backgroundColor=[UIColor clearColor]; Lable.textColor=[UIColor whiteColor]; Lable.textAlignment= UITextAlignmentCenter; [Game addSubview:Lable]; [Game addSubview:Process]; [Game show]; Timer1 = [NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(Change) userInfo:nil repeats:NO]; } -(void)Change{ Timer2 = [NSTimer scheduledTimerWithTimeInterval:2 target:self selector:@selector(Change) userInfo:nil repeats:NO]; if (i==0) Lable.text=@"Set"; else Lable.text=@"Go"; i++; if (i==3) { [Timer2 invalidate]; Timer2=nil; [Process stopAnimating]; [Game dismissWithClickedButtonIndex:0 animated:YES]; } } - (void)viewDidUnload { [super viewDidUnload]; // Release any retained subviews of the main view. } - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown); } @end 
 UIAlertView *processview; UILabel *lbl; NSTimer *enableTimer; int count; - (void)enableTimerFinetworking:(NSTimer *)timer { switch (count) { case 1: [lbl setText:@"Ready"]; break; case 2: [lbl setText:@"Set"]; break; case 3: [lbl setText:@"Go"]; break; case 4: [enableTimer invalidate]; enableTimer = nil; [processview dismissWithClickedButtonIndex:-1 animated:YES]; break; default: break; } count++; } - (void)viewDidLoad { [super viewDidLoad]; processview = [[UIAlertView alloc] initWithTitle:@"\n" message:@"\n\n" delegate:self cancelButtonTitle:nil otherButtonTitles: nil] ; lbl = [[UILabel alloc] initWithFrame:CGRectMake(100, 10, 90, 30)]; [lbl setText:@"Ready"]; [lbl setBackgroundColor:[UIColor clearColor]]; [lbl setTextColor:[UIColor whiteColor]]; [lbl setTextAlignment:NSTextAlignmentCenter]; [processview addSubview:lbl]; UIActivityIndicatorView *largeActivity = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge]; [largeActivity setFrame:CGRectMake(120, 75, 50, 50)]; [largeActivity startAnimating]; [processview addSubview:largeActivity]; [processview show]; enableTimer = [[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(enableTimerFinetworking:) userInfo:nil repeats:YES] retain]; count = 1; } 

Descargar SVProgressHUD. Esto se encargará de ti en 2-3 líneas de código. Funciona muy bien (puede que no tenga un post cambiable. Si es así, intente con MBProgressHUD a continuación)

https://github.com/samvermette/SVProgressHUD

También hay MBprogressHUD que puede permitirte cambiar posts a mitad de path a través de un process, pero he descubierto que causa algunos problemas menores en la aplicación.

https://github.com/jdg/MBProgressHUD