C'è un modo per nascondere la barra di stato quando si mostra la schermata iniziale su iPhone e poi mostrarla di nuovo nell'applicazione?
C'è un modo per nascondere la barra di stato quando si mostra la schermata iniziale su iPhone e poi mostrarla di nuovo nell'applicazione?
Risposte:
Sono abbastanza sicuro che se il tuo file Info.plist ha il Status bar is initially hidden
valore impostato su YES
, non verrà visualizzato durante il caricamento dell'applicazione. Una volta caricata l'applicazione, puoi mostrare nuovamente la barra di stato utilizzando il setStatusBarHidden:animated:
metodo di UIApplication .
[[UIApplication sharedApplication] setStatusBarHidden:NO];
su - application: didFinishLaunchingWithOptions:
La chiave corretta in .plist è "UIStatusBarHidden" e seleziona il lato destro. Diventerà "La barra di stato è inizialmente nascosta", quindi automaticamente. Nella mia pratica, puoi controllare lo spettacolo / nascondi della StatusBar ovunque quando nascondi:
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];
[UIApplication sharedApplication].keyWindow.frame=CGRectMake(0, 0, 320, 480); //full screen.
quando mostra:
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:NO];
[UIApplication sharedApplication].keyWindow.frame=CGRectMake(0, 20, 320, 460); //move down 20px.
spero che questo ti sia stato utile.
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:NO];
float width = ((UIScreen *)[UIScreen mainScreen]).bounds.size.width;
float height = (((UIScreen *)[UIScreen mainScreen]).bounds.size.height - 20);
[UIApplication sharedApplication].keyWindow.frame = CGRectMake(0, 20, width, height);
setStatusBarHidden:withAnimation
prevede un typedef NSInteger UIStatusBarAnimation
per il secondo argomento, non un BOOL. Invece di NO
, usaUIStatusBarAnimationNone
Visualizza -> Tipo elenco proprietà -> Elenco info iPhone. Ora, crea un nuovo elemento con "la barra di stato inizialmente nascosta" selezionata.
Seguendo la risposta di Dave, il tasto "La barra di stato è inizialmente nascosta" non ha funzionato per me sotto iOS 4.3 MA il tasto "UIStatusBarHidden" e quindi impostare il suo tipo su Boolean e selezionare la casella ha funzionato.
Questo articolo per sviluppatori mi ha portato alle chiavi Info.plist e quindi a trovare la chiave equivalente per nasconderlo non è stato troppo difficile.
È interessante notare che "UIStatusBarStyle" deve utilizzare il nome dell'enumerazione come una stringa affinché funzioni.
Per Xcode 5 e versioni successive puoi semplicemente impostare:
Visualizza l'aspetto della barra di stato basata su controller su NO
Nella tua info.plist o nella scheda info del tuo progetto principale.
è deprecato
setStatusBarHidden:(BOOL) animated:(BOOL)
è corretto
setStatusBarHidden:(BOOL) withAnimation:(UIStatusBarAnimation)
UIStatusBarAnimation che può essere:
UIStatusBarAnimationNone o UIStatusBarAnimationFade o UIStatusBarAnimationSlide
Questo ha funzionato per me nel info.plist:
"View controller-based status bar appearance" -> set to NO
Per gli editor XML ~ aggiungi al primo figlio di
<key>UIStatusBarHidden</key>
<true/>