In meiner iOS-Video-App ist die Statusleiste in einigen View-Controllern ausgeblendet. Ich habe dies mit folgendem Code gemacht.
[[UIApplication sharedApplication] setStatusBarHidden:YES];
Es funktioniert für iOS 5 und iOS 6, jedoch nicht für iOS 7.
Ich habe mit diesem insbesondere View Controller versucht,
Z.B:
-(BOOL)prefersStatusBarHidden { return YES; }
Es funktioniert gut, aber ich kann die Statusleiste im übergeordneten Ansichts-Controller nicht mehr anzeigen.
Antworten:
Sie sollten diesen Wert zu plist hinzufügen: " Controller-basiertes Statusleisten-Erscheinungsbild anzeigen " und auf " NEIN " setzen.
quelle
UIViewControllerBasedStatusBarAppearance
"View controller-based status bar appearance" set it to "YES".
?Fügen Sie Ihrer Info.plist Folgendes hinzu:
quelle
Fügen Sie die folgende Zeile in viewdidload hinzu
und neue Methode hinzufügen
Ändern Sie auch die Datei info.plist. Zeigen Sie das Erscheinungsbild der Controller-basierten Statusleiste an. "= NO
es funktioniert für mich
quelle
prefersStatusBarHidden
ist das, was der Trick für mich getan hat (ob mit dieser Lösung oder mit anderen ähnlichen)Fügen Sie in der Liste die folgenden Eigenschaften hinzu.
Jetzt wird die Statusleiste ausgeblendet.
quelle
Versuchen Sie diese einfache Methode:
Ziel c:
Schnell:
quelle
UIStatusBarAnimation
s, sie sind ziemlich toll.[super viewWillAppear:animated]
und[super viewWillDisappear:animated]
Ich habe folgendes getan und es scheint zu funktionieren (sogar in iOS 8):
quelle
Interessanter wird es jedoch, wenn ein UINavigationController beteiligt ist:
quelle
Um die Statusleiste in iOS7 auszublenden, benötigen Sie 2 Codezeilen
in Anwendung: (UIApplication *) Anwendung didFinishLaunchingWithOptions: (NSDictionary *) launchOptions write
in info.plist füge dies hinzu
quelle
Fügen Sie zum besseren Verständnis einige Fotos mit Kommentaren hinzu:
App vor Änderungen
Finden Sie in Ihrem
Project Navigator
Ordner mit dem NamenSupporting Files
und klicken Sie auf * .plist DateiNachdem Sie eine andere Einstellung Ihrer App erhalten haben, wird diese angezeigt. Sie müssen 2 Schlüssel
UIStatusBarHidden
und hinzufügenUIViewControllerBasedStatusBarAppearance
. Klicken Sie dazu einfach auf die Schaltfläche +Nach dem Drücken von + können Sie eine der Tasten auswählen - beginnen Sie einfach mit der Eingabe.
Korrekte Version:
Und schließlich Anwendung nach Anwendung dieser Änderungen:
Sie können aber auch alternative Lösung finden hier
quelle
In iOS10 musste ich nur die Variable
prefersStatusBarHidden
in meinemRootViewController
(Swift) überschreiben :quelle
Versuch das;
quelle
So verbergen Sie Ihre Statusleiste in iOS7:
Öffnen Sie Ihre Plist-Datei, fügen Sie eine Zeile mit dem Namen "Controller-basiertes Erscheinungsbild der Statusleiste anzeigen" hinzu und setzen Sie den Wert auf
NO
.quelle
Hier ist die Swift-Version (vor iOS9):
Dies funktioniert auch (iOS7 +):
Sie müssen auch anrufen:
in sagen
viewDidLoad()
.Beachten Sie, dass Sie bei Verwendung eines SplitView-Controllers oder eines anderen
container
View-Controllers beim Senden auch Ihre Klasse zurückgeben müssenchildViewControllerForStatusBarHidden
. Eine Möglichkeit, dies zu tun, besteht darin, beispielsweise eine öffentliche schwache Variable zustatusController
haben und diese in dieser überschriebenen Methode zurückzugeben.quelle
Ab iOS 9:
Da die
statusBarHidden
Methode von iOS9 veraltet war, müssen Sie zwei Werte in plist wie folgt hinzufügen:oder per Benutzeroberfläche Bitte siehe Bild unten:
Wie
statusBarHidden
wird Veraltete von iOS9 :quelle
FESTE LÖSUNG FÜR SWIFT 3+ (iOS 9, 10)
1- In info.plist unter Eigenschaft setzen
2- Fügen Sie den folgenden Code in den Root-Controller ein
Sie können anrufen
isStatusBarHidden = true
undisStatusBarHidden = false
wo Siehide/show
Statusleiste möchtenquelle
Sie sollten diesen Wert zu plist hinzufügen: "Controller-basiertes Statusleisten-Erscheinungsbild anzeigen" und auf "NEIN" setzen.
quelle
Schritte zum Ausblenden der Statusleiste in iOS
1. Öffnen Sie die Datei AppDelegate.m und fügen Sie application.statusBarHidden in der didFinishLaunchingWithOptions-Methode hinzu
View controller-based status bar appearance
einstellenNO
quelle
Swift 5
Führen Sie die folgenden Schritte aus, um die iOS-Statusleiste auszublenden:
Screenshot der endgültigen Einstellungen:
Dies funktioniert unter Xcode 10.2
quelle
Von
UIKit
>UIApplication.h
:Also sollte
View controller-based status bar appearance
auf NO gesetzt werdenquelle
Um die Frage der Susitha zu beantworten: Verwenden Sie setNeedsStatusBarAppearanceUpdate . Dadurch wird prefersStatusBarHidden aufgerufen, um mit dem gewünschten Statusleistenstatus zu aktualisieren. Versuche dies:
Wenn Sie die Statusleiste erneut anzeigen möchten, setzen Sie Ihre Eigenschaft hideStatusBar (oder wie auch immer Sie sie nennen) auf NO. Rufen Sie PreferStatusBarHidden indirekt auf, indem Sie einen weiteren Anruf bei tätigen
quelle
Update für Swift 3:
Aktualisieren Sie Info.plist mit den folgenden Informationen:
View controller-based status bar appearance: NO
Dann in einem ViewController oder anderswo:
UIApplication.shared.isStatusBarHidden = true
quelle