Mam pasek UITabbar mający 5 takich zakładek
Teraz chcę ukryć pasek UITabbar po dotknięciu przyciskuKarta Feed. Chcę tam wyświetlić pełny ekran. Jestem w stanie ukryć pasek kart, ale ekran UIView kanału nie dostosowuje się sam i widzę białą przestrzeń w miejscu UITabBar. Ustawiłem ramkę widoku po ukryciu paska UITabbar, ale również nie działa. Jak mogę uzyskać obiekt UITabbarController w klasach UIViewController, które są dodawane na UITabbar, aby móc wywoływać metody delegowane UITabbarController. Na przykład, jak mogę mieć obiekt UITabbarController w Feed Class. Proszę o pomoc! Jeśli nie mam jasności, daj mi znać. Dzięki-
Odpowiedzi:
2 dla odpowiedzi № 1Spróbuj dodać self.hidesBottomBarWhenPushed = YES;
wnętrze -(id)initWithCoder:(NSCoder *)aDecoder;
implementacji klasy Feed tak:
-(id)initWithCoder:(NSCoder *)aDecoder{
self = [super initWithCoder:aDecoder];
if(self){
self.hidesBottomBarWhenPushed = YES;
//more of your initialization code...
}
return self;
}
Powinno być w -(id)initWithCoder:(NSCoder *)aDecoder;
i nie -(id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil;
ponieważ widok jest ładowany z pliku .xib przez aplikację.
3 dla odpowiedzi № 2
Dodając do odpowiedzi Ariel, musisz ustawić„hidesBottomBarWhenPushed” właściwość na YES podczas ładowania z końcówki. Ponieważ „initWithCoder” -Method jest wywoływany, jeśli ładujesz z końcówki, musisz ustawić tylko tę właściwość. Mam nadzieję, że to ci pomoże.
0 dla odpowiedzi № 3
Spróbuj ukryć pasek self.navigationController.view.frame.
Rozmiar pełnoekranowy można uzyskać za pomocą [[UIScreen mainScreen] bounds].