Właśnie zaktualizowałem swój iPhone 5 iOS 7 do wersji beta 4. Teraz, gdy uruchamiam moją aplikację z Xcode 5 na tym iPhonie, pasek stanu nie ukrywa się, nawet jeśli powinien.
Nie działa:
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
Nie działa:
[UIApplication sharedApplication].statusBarHidden = YES;
Nie można zalogować się na forach programistów Apple
objective-c
statusbar
ios7
Melih Büyükbayram
źródło
źródło
Odpowiedzi:
w pliku plist aplikacji dodaj wiersz nazwij go „Wyświetl pasek stanu oparty na kontrolerze” i ustaw go na NIE
Pamiętaj, że to po prostu nie działa, jeśli używasz UIImagePickerController w aplikacji.
z http://www.openfl.org/developer/forums/general-discussion/iphone-5ios-7-cant-hide-status-bar/ , rozwiązanie mgiroux
źródło
UIViewControllerBasedStatusBarAppearance
.Status bar is initially hidden
do TAK .Dodaj metodę w kontrolerze widoku.
źródło
prefersStatusBarHidden
w kontrolerze widoku, to nie zadziała. Pasek stanu nadal się pojawia.W Plist dodaj następujące właściwości.
->
Status bar is initially hidden
= TAK->
View controller-based status bar appearance
= NIEDodaj oba - teraz pasek stanu zniknie.
źródło
Aby ukryć pasek stanu w jednym widoku, należy użyć:
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];
Na początku nie działało to dla mnie, a potem w dokumentacji tej metody zobaczyłem: // Ustawienie statusBarHidden nic nie robi, jeśli aplikacja używa domyślnego systemu paska stanu opartego na UIViewController.
Należy to zrobić w pliku plist, dodając
View controller-based status bar appearance
zestaw kluczy doNO
. A potem zadziałało.źródło
Aby użyć starszej metody UIApplication do ukrywania / wyświetlania paska stanu, aplikacja musi ustawić wartość plist dla systemu iOS 7:
View-Controller Based Status Bar Appearance = NO
Domyślnie ta wartość jest ustawiona na TAK. Jeśli zmienisz go na NIE, możesz użyć starszych metod. Jeśli pozostawisz ustawienie TAK, nadal możesz ukryć pasek stanu, ale to zależy od każdej podklasy kontrolera widoku w Twojej aplikacji, aby zastąpić:
prefersStatusBarHidden
zwrócić TAK.Za każdym razem, gdy aplikacja wymaga zmiany wyglądu paska stanu lub widoczności, a Wygląd paska stanu na podstawie kontrolera jest ustawiony na TAK, twój najbardziej zewnętrzny kontroler widoku musi zadzwonić:
setNeedsStatusBarAppearanceUpdateAnimation
źródło
Aby ukryć pasek stanu w iOS7, potrzebujesz 2 linii kodu
niestosowanie:
(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
pisaćw info.plist dodaj to
źródło
[application setStatusBarHidden:YES];
lubapplication.statusBarHidden = YES;
Istnieje wiele kombinacji sugerowanych dla tego problemu, ale problem polega na tym, że iOS 6 i 7 używają różnych metod, aby ukryć pasek stanu. Nigdy nie udało mi się ustawić ustawień plist, aby włączyć zachowanie w stylu iOS6 na iOS 7, ale jeśli budujesz swoją aplikację do obsługi iOS 6+, musisz użyć 3 metod jednocześnie, aby upewnić się, że określony kontroler widoku ukrywa status bar:
Powinno to działać niezależnie od ustawień Plist.
źródło
Musiałem zrobić obie zmiany poniżej, aby ukryć pasek stanu:
Dodaj ten kod do kontrolera widoku, w którym chcesz ukryć pasek stanu:
Dodaj to do pliku .plist (przejdź do „informacji” w ustawieniach aplikacji)
Następnie możesz zadzwonić pod tę linię, aby ukryć pasek stanu:
źródło
Wystarczy dodać te 2 wiersze w pliku info.plist. Naprawi to zarówno iOS7, jak i starszą wersję.
Przejdź do projektu i wybierz Cele -> Ogólne i zobacz pole wyboru „Styl paska stanu ... Ukryj podczas uruchamiania aplikacji” zostanie zaznaczone. To zadziała.
źródło
Wypróbuj tę prostą metodę:
źródło
Jedyną rzeczą, która działała dla mnie, było dodanie następujących elementów w liście
źródło
Najłatwiejszą metodą ukrywania paska stanu w całej aplikacji, jaką znalazłem, jest
category
włączenieUIViewController
i zastąpienieprefersStatusBarHidden
. W ten sposób nie musisz pisać tej metody w każdym kontrolerze widoku.UIViewController + HideStatusBar.h
UIViewController + HideStatusBar.m
źródło
Dodaj do listy ----
Zobacz wygląd paska stanu kontrolera --- NIE
W każdym widoku kontroler pisz
W przypadku problemu z paskiem stanu w iOS 7, ale celem aplikacji powinno być 5.1 i więcej
źródło
Wiele odpowiedzi w tym wątku działa, ale rozumiem, że jeśli próbujesz zrobić coś dynamicznego, w końcu musisz zadzwonić:
źródło
Kroki, aby ukryć pasek stanu w iOS 7:
1. Przejdź do pliku info.plist aplikacji.
2.I Ustaw, Wyświetl wygląd paska stanu na podstawie kontrolera: Boolean NO
Mam nadzieję, że rozwiązałem problem paska stanu .....
źródło
W przypadku systemu iOS 7 w jednym widoku użyj metody viewWillappear:
Do wyświetlenia paska stanu użyj:
źródło
źródło
W pliku informacji Plist Dodaj wiersz dla następującej właściwości
Nazwa właściwości: wyświetlanie wyglądu paska stanu opartego na kontrolerze
Wartość: NIE
źródło
Spróbuj dodać następującą metodę do kontrolera widoku głównego aplikacji:
źródło
Wypróbowałem wszystkie te opcje zamieszczone tutaj w moim projekcie i one nie działały. Pomyślałem, że może to mieć związek z faktem, że zaktualizowałem moją
Xcode
aplikację, a następnie aplikację na iOS 7, a niektóre ustawienia zostały gdzieś pomieszane. Postanowiłem zbudować dla niego zupełnie nowy projekt i po prostym ustawieniu: „Status bar is initially hidden = YES
” i „View controller-based status bar appearance = NO
”, jak stwierdzono przez wiele innych, działał poprawnie (tj. Bez paska stanu).Więc moja rada, jeśli pracujesz nad projektem, który został zaktualizowany do iOS 7 ze starej wersji i wypróbowałeś wszystkie inne opcje, jest zbudowanie nowego projektu.
źródło
Na rok 2019 ...
Aby utworzyć aplikację bez pasków stanu,
Kliknij info.plist, kliknij prawym przyciskiem myszy, aby „Dodaj wiersz”.
Dodaj te dwa z tymi ustawieniami:
To wszystko.
źródło
Możesz sprawdzić ten kod , pod UIViewController + ODStatusBar
źródło
Dla Swift 2.0+ IOS 9
źródło
Aby ukryć pasek stanu dla określonego viewController
Aby ustawić pasek stanu Ukryty dla aplikacji:
ustawione
View controller-based status bar appearance
naNO
w .plist i wapplication: didFinishLaunchingWithOptions:
zestawie:[application setStatusBarHidden:YES];
LUB
w Ustawieniach projektu -> Karta Ogólne -> Informacje o wdrożeniu
Sprawdzić
Hide Status bar
skrzynkę.źródło
źródło
Nie jestem pewien, dlaczego „nie możesz zalogować się na forach programistów Apple”, ale (bez naruszenia NDA) możesz również ukryć swój pasek statusu za pomocą Xcode. Jest to ogólne ustawienie celu aplikacji.
źródło