Pregunta

Una vista indicador de actividad es útil en muchas aplicaciones. Alguna idea acerca de cómo agregar, activiate y despedir una vista indicador de actividad en el iPhone?

Todos los métodos para ello son bienvenidos aquí.

¿Fue útil?

Solución

Crea:

spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
[spinner setCenter:CGPointMake(kScreenWidth/2.0, kScreenHeight/2.0)]; // I do this because I'm in landscape mode
[self.view addSubview:spinner]; // spinner is not visible until started

Start:

[spinner startAnimating]; 

Stop:

 [spinner stopAnimating];

Cuando haya terminado, finalmente, eliminar el control de giro de la vista y la liberación.

Otros consejos

Tome un vistazo a la aplicación de WordPress de código abierto. Tienen un reutilizable ventana muy que han creado para mostrar una "actividad en curso" Tipo de pantalla sobre la parte superior de cualquier ver su aplicación está mostrando actualmente.

http://iphone.trac.wordpress.org/browser/trunk

Los archivos que desea son:

  • WPActivityIndicator.xib
  • RoundedRectBlack.png
  • WPActivityIndicator.h
  • WPActivityIndicator.m

A continuación, para mostrar que usar algo como:

[[WPActivityIndicator sharedActivityIndicator] show];

Y ocultar con:

[[WPActivityIndicator sharedActivityIndicator] hide];

en lo que respecta a:

  

Tome un vistazo a la aplicación de WordPress de código abierto. Tienen un reutilizable ventana muy que han creado para mostrar una "actividad en curso" Tipo de pantalla sobre la parte superior de cualquier ver su aplicación está mostrando actualmente.

Tenga en cuenta que si lo hace utilizar este código que debe proporcionar todo el código fuente de su propia aplicación para cualquier usuario que lo solicite. Es necesario ser conscientes de que pueden decidir volver a empaquetar el código y lo venden en la tienda de sí mismos. Todo esto está previsto en los términos de la Licencia Pública General de GNU (GPL).

Si no desea ser forzado a abrir su código fuente, entonces no puede utilizar cualquier cosa de la aplicación iPhone wordpress incluyendo el, ventana de actividad progreso que se hace referencia, sin forzar la GPL para aplicar a su propia cuenta.

La documentación sobre este tema es bastante claro. Es una subclase UIView para que lo utilice como cualquier otra vista. Para iniciar / detener la animación se utiliza

[activityIndicator startAnimating];
[activityIndicator stopAnimating];

Uso de Storyboard -

Crea -

  • Ir a main.storyboard (Esto se puede encontrar en theproject Navigator en el lado izquierdo de su Xcode) y arrastrar y soltar el "Indicador de actividad Ver" de la biblioteca de objetos.

Indicador de actividad Vista desde la biblioteca de objetos

  • Ir al archivo de encabezado y crear un IBOutlet para la UIActivityIndicatorView -

     @interface ViewController : UIViewController
    
         @property (nonatomic,strong) IBOutlet UIActivityIndicatorView *activityIndicatorView;
    
     @end
    
  • Establecer la conexión de las salidas a la UIActivityIndicatorView.

Inicio:

Utilice el siguiente código cuando se necesita para iniciar el indicador de actividad utilizando el código siguiente en el archivo de aplicación (.m) -

 [self.activityIndicatorView startAnimating];

Detener:

Utilice el siguiente código cuando se necesita para detener el indicador de actividad utilizando el código siguiente en el archivo de aplicación (.m) -

 [self.activityIndicatorView stopAnimating];

Creo que se debe utilizar oculta mejor.

activityIndicator.hidden = YES

El indicador de actividad 2 muestran seg e ir a la página siguiente

@property(strong,nonatomic)IBOutlet UIActivityIndicator *activityindctr;

-(void)viewDidload { [super viewDidload];[activityindctr startanimating]; [self performSelector:@selector(nextpage) withObject:nil afterDelay:2];}

-(void)nextpage{ [activityindctr stopAnimating]; [self performSegueWithIdentifier:@"nextviewcintroller" sender:self];}
- (IBAction)toggleSpinner:(id)sender
{
    if (self.spinner.isAnimating)
    {
        [self.spinner stopAnimating];
        ((UIButton *)sender).titleLabel.text = @"Start spinning";
        [self.controlState setValue:[NSNumber numberWithBool:NO] forKey:@"SpinnerAnimatingState"];
    }
    else
    {
        [self.spinner startAnimating];
        ((UIButton *)sender).titleLabel.text = @"Stop spinning";
        [self.controlState setValue:[NSNumber numberWithBool:YES] forKey:@"SpinnerAnimatingState"];
    }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top