ROZWIĄZANIE: Sprawdź poniżej, aby znaleźć rozwiązanie mojego problemu.Jak wyśrodkować wskaźnik UIActivity?
Hej SO,
Mam problemy centrowania się UIActivityIndicator w centrum widoku. Jak widać, jest nieco dalej w pionie niż powinno. To, co mam, to UIScrollView, który później dodaje wyeksportowane UIImage. Przed załadowaniem UIImage mam ten UIActivityIndicator, aby pokazać, że obraz się ładuje.
- (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];
Wszelkie pomysły, w jaki sposób mogę dostać do centrum CGPoint i ustawić UIActivityIndicator tam? Nie jestem pewien, dlaczego self.view.center
nie działa.
Z góry dziękuję.
EDYCJA: Musiałem uwzględnić wysokość paska nawigacyjnego i pasek kart. Kod Musiałem dodać to:
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);
Dzięki @Robert Ryan! Odchodząc od twoich wskazówek, udało mi się sprawić, żeby działało poprawnie. Musiałem znaleźć wysokość zarówno paska nawigacyjnego, jak i paska kart, aby uzyskać odpowiednią wysokość. Dodałem kod do mojego pierwotnego wpisu. – kkSlider