vueltas simbolo rodando queda porque plus pensando internet icono girando dando compartir circulo aparece iphone frame activity-indicator navigationbar

iphone - simbolo - ¿Cómo establecer el indicador de actividad en la barra de navegación?



porque aparece un circulo dando vueltas en mi iphone 6 (12)

¡Gracias! Mi indicador está funcionando ahora.

Estoy compartiendo un ejemplo de código para noobs compañeros, para poner esto en contexto.

- (void) viewDidLoad

// custom button images UIImage *customImage = [UIImage imageNamed:@"menu24"]; UIImage *customImage2 = [UIImage imageNamed:@"search24"]; UIImage *customImage3 = [UIImage imageNamed:@"back24"]; // These are linked in my story board to Navigation Item [self customiseBarBtnItem:[self menu_button] customImage:customImage selector:@selector(menuPressed:)]; [self customiseBarBtnItem:[self search_button] customImage:customImage2 selector:@selector(searchPressed:)]; [self customiseBarBtnItem:[self backButton] customImage:customImage3 selector:@selector(backPressed:)]; //initialize the activity indicator - as @antf comment suggests for ios7 UIActivityIndicatorView *actInd=[[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray]; //store it as a property on the view controller self.activityIndicator = actInd; // this sets up activity indicator UIBarButtonItem *progress_indicator = [[UIBarButtonItem alloc] initWithCustomView:[self activityIndicator]]; // link custom buttons AND activity indicator in desired order to navigation bar self.navigationItem.rightBarButtonItems = [NSArray arrayWithObjects: self.menu_button, self.search_button, progress_indicator, nil];

// Para compleción: así es como programáticamente muestro / escondo mi botón de retroceso

if ( bShowBack == YES ) self.navItemBar.leftBarButtonItem = self.backButton; else self.navItemBar.leftBarButtonItem = Nil;

// Utilizo mi indicador de actividad con un UIWebView así que accionalo de la siguiente manera

- (void)webViewDidStartLoad:(UIWebView *)webView { [[self activityIndicator] startAnimating]; } - (void)didFailLoadWithError:(UIWebView *)webView didFailLoadWithError:(NSError *)error { [[self activityIndicator] stopAnimating]; } - (void)webViewDidFinishLoad:(UIWebView *) webView { [[self activityIndicator] stopAnimating]; }

Soy nuevo en el desarrollo de iphone. Quiero establecer un indicador de actividad en la barra de navegación. Veo mi indicador de actividad debajo de la barra de navegación. Mi código está aquí.

-(IBAction) gomethod : (id) sender { xxMapSubviewcontroller = [[XxMapSubviewcontroller alloc] init]; [self.navigationController pushViewController:xxMapSubviewcontroller animated:YES]; activityIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray]; activityIndicator.frame = CGRectMake(0.0, 0.0, 20.0, 20.0); [activityIndicator startAnimating]; [xxMapSubviewcontroller.view addSubview:activityIndicator]; }

¿Cómo puedo configurar mi indicador de actividad en la barra de navegación? Por favor, ayúdenme. Gracias.


Agregué el siguiente fragmento de código en la vista donde quería el indicador de actividad en la barra de navegación.

activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0, 0, 20, 20)]; UIBarButtonItem * barButton = [[UIBarButtonItem alloc] initWithCustomView:activityIndicator]; [self navigationItem].rightBarButtonItem = barButton; [activityIndicator startAnimating];


Aquí está creando una nueva vista de indicador de actividad, lo cual está bien, pero no se está refiriendo al indicador de actividad en la barra de estado.

Para mostrar el indicador de actividad en la barra de estado, simplemente llame a esto:

[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];


Código SWIFT:

let activityIndicator = UIActivityIndicatorView(frame: CGRect(x: 0, y: 0, width: 20, height: 20)) let barButton = UIBarButtonItem(customView: activityIndicator) self.navigationItem.setRightBarButtonItem(barButton, animated: true) activityIndicator.startAnimating()


Como WhatsApp:

//Declarar

let activityIndicator = UIActivityIndicatorView(activityIndicatorStyle: .gray)

// ViewDidLoad

self.activityIndicator.hidesWhenStopped = true func showIndicator() { self.navigationItem.titleView = self.activityIndicator self.activityIndicator.isHidden = false } func hideIndicator() { self.navigationItem.titleView = nil }


En Swift, hice lo siguiente:

Habilitar: UIApplication.sharedApplication().networkActivityIndicatorVisible = true

Deshabilitar: UIApplication.sharedApplication().networkActivityIndicatorVisible = false


Esto funcionó para mí en Swift:

let activityIndicator: UIActivityIndicatorView = UIActivityIndicatorView.init(activityIndicatorStyle: .White) let refreshBarButton: UIBarButtonItem = UIBarButtonItem(customView: activityIndicator) self.navigationItem.leftBarButtonItem = refreshBarButton activityIndicator.startAnimating()


Traté de usarlo ahora y el código mencionado por el guerrero no funcionó exactamente como está. Tuve que cambiar la inicialización de activityIndicator:

activityIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];

Con este cambio, debería funcionar como se esperaba.



tratar . self.navigationItem.leftBarButtonItem.customView = su vista


En el guión gráfico: BarButtonItem en la barra de navegación. Añada View para ser hijo de su BarButtonItem y ActivityIndicator para ser hijo de su View .


Rápido

  1. Connet UIBarButtonItem del storyboard a su yourViewController
  2. elimine la week de su definición como: @IBOutlet var btNavigaitonRight: UIBarButtonItem!
  3. Utilice estos métodos para iniciar y detener el indicador de actividad:

    func startBarButtonIndicator() { activityIndicator = UIActivityIndicatorView(frame: CGRect(x: 0, y: 0, width: 20, height: 20)) activityIndicator?.color = .gray let barButton = UIBarButtonItem(customView: activityIndicator!) self.navigationItem.setRightBarButton(barButton, animated: true) activityIndicator?.startAnimating() } func stopBarButtonIndicator() { activityIndicator?.stopAnimating() navigationItem.setRightBarButton(btNavigaitonRight, animated: true) }