RISOLTO: controllare sotto per la soluzione al mio problema.Come centrare UIActivityIndicator?
Hey SO,
Ho problemi a centrare l'UIActivityIndicator nel centro della vista. Come puoi vedere qui, è un po 'più in basso verticalmente di quanto dovrebbe essere. Quello che ho è un UIScrollView che in seguito aggiunge una sottoview UIImage. Prima di caricare UIImage, ho questo UIActivityIndicator per mostrare che l'immagine si sta caricando.
- (void)viewDidLoad
{
[super viewDidLoad];
self.scrollView.backgroundColor = [UIColor blackColor];
UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
spinner.center = self.view.center;
[spinner startAnimating];
[self.view addSubview:spinner];
Qualche idea su come ottenere il centro CGPoint e impostare UIActivityIndicator lì? Non sono sicuro del perché self.view.center
non funzioni.
Grazie in anticipo.
MODIFICA: ho dovuto tenere conto dell'altezza della barra di navigazione e della barra delle schede. Il codice ho dovuto aggiungere era:
float navigationBarHeight = [[self.navigationController navigationBar] frame].size.height;
float tabBarHeight = [[[super tabBarController] tabBar] frame].size.height;
spinner.center = CGPointMake(self.view.frame.size.width/2.0, (self.view.frame.size.height - navigationBarHeight - tabBarHeight)/2.0);
Grazie @Robert Ryan! Spegnendo i tuoi due suggerimenti sono riuscito a farlo funzionare correttamente. Ho dovuto trovare l'altezza sia della barra di navigazione che della barra delle schede per ottenere l'altezza corretta. Ho aggiunto il codice al mio post originale. – kkSlider