Pregunta

Estoy tratando de conseguir un UIActivityIndicatorView para trabajar dentro de un UIButtonBarItem usando el siguiente código:

- (void)showActivityIndicator
{
    UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0, 0, 20, 20)];
    [activityIndicator startAnimating];

    UIBarButtonItem *activityBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:activityIndicator];
    [activityIndicator release];

    self.navigationItem.rightBarButtonItem = activityBarButtonItem;
    [activityBarButtonItem release];
}

Funciona hasta el punto que se muestra el indicador de actividad, pero no está dentro de una barra de botones.

¿Alguien tiene alguna idea de lo que estoy haciendo mal aquí?

¿Fue útil?

Solución

Esto es lo que hice para conseguir un indicador de actividad a aparecer cuando quería que en el lado izquierdo de una barra de herramientas:

activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0.0, 0.0, 25.0, 25.0)];
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleGray;
activityIndicator.hidesWhenStopped = YES;

UIBarButtonItem *btnActivity = [[UIBarButtonItem alloc] initWithCustomView:activityIndicator];
NSMutableArray *tItems = [self.toolbar.items mutableCopy];
[tItems insertObject:btnActivity atIndex:0];
self.toolbar.items = tItems;
[tItems release];

A continuación, más adelante en mi código cuando quiero mostrar el indicador de actividad, simplemente lo uso de la forma habitual:

[activityIndicator startAnimating];

Y, cuando yo no quiero verlo más:

[activityIndicator stopAnimating];

Otros consejos

  

pero no está dentro de una barra de botones

Y dónde está?

Tal vez el marco que está configurando es incorrecta? ¿Ha intentado CGRectZero o algo al azar (por ejemplo CGRectMake(40,60,20,20))? ¿Tiene algún impacto sobre la posición del indicador?

¿Usted ha intentado establecer la propiedad width del artículo?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top