2009-05-23 17 views
10

Sono quasi sicuro di aver eseguito tutti i passaggi per impostare correttamente la barra di stato su nascosto. Ho fatto questo sia nel file info.plist (impostando un UIStatusBarHidden per un valore booleano TRUE), così come nel metodo applicationDidFinishLaunching nel delegato Applicazione che utilizza:Perché la barra di stato mostra ancora durante Default.png?

[[UIApplication sharedApplication] setStatusBarHidden:YES animated:NO]; 

E la barra di stato si nasconde - solo non veloce abbastanza. Nonostante i passaggi sopra riportati, quando l'app viene avviata, la barra di stato è ANCORA rappresentata da per circa un secondo durante la visualizzazione dell'immagine predefinita Default.png. Questo sembra poco chiaro, e voglio assicurarmi che la barra di stato non venga visualizzata in qualsiasi momento durante il funzionamento dell'app.

Molte applicazioni che ho provato STO nascondendo correttamente la barra di stato (non viene visualizzato nemmeno durante la visualizzazione di default.png) ma non riesco a capire come. Qualcuno ha affrontato questo problema prima?

risposta

17

Hai già capito? Quello che ho fatto per farlo funzionare è modificare il file Info.plist in TextMate piuttosto che in Xcode. Ho aggiunto le seguenti due righe:

 
<key>UIStatusBarHidden</key> 
<true/> 

Credo che l'unica cosa diversa dalle risposte di cui sopra è che ho usato un editor di testo piuttosto che Xcode. Quando successivamente si consulta Info.plist in Xcode, verrà visualizzato un segno di spunta accanto a UIStatusBarHidden anziché una stringa. C'è probabilmente un modo per farlo direttamente in Xcode, ma non so cosa sia.

+0

Ehi. Non ho mai risolto il problema con la barra di stato ma sembrava correggersi una volta che ho regolato per/installato 3.0. Ora non ci sono problemi. – RexOnRoids

+0

Il modo in cui lo si imposta in Xcode è di aprire il plist, aggiungere la voce, control-clic sull'elemento nell'editor plist, selezionare Tipo valore -> Booleano nel menu popup, POI impostare il valore. –

+0

L'articolo sullo stesso, ripercorre tutto: http://iphonedevelopertips.com/user-interface/gotcha-hiding-the-status-bar.html –

8

UIStatusBarHidden deve essere impostato su true.

+0

io sono sicuro dove i downvotes sono provenienti da. Non c'è bisogno di un compromesso, il poster originale era molto vicino alla soluzione reale. Come indicato nella domanda originale "Ho fatto questo in entrambi i file info.plist (impostando un UIStatusBarHidden su un FALSE booleano)". Tutto ciò che dovete fare è impostare la proprietà plist "UIStatusBarHidden" su TRUE invece che FALSE. Ciò garantirà che la barra di stato sia * sempre * nascosta, anche quando viene mostrato Default.png. – sroske

+0

I downvotes sono perché la tua soluzione proposta non ha nulla a che fare con la domanda originale. –

+0

Erm - OK, quindi ora sono in colpa. Non ho nemmeno letto abbastanza bene il tuo commento. Un voto da parte mia, sembra che tu abbia effettivamente una soluzione. Avresti dovuto inserire più informazioni nella tua risposta, dicendo che deve essere una coppia chiave-valore di Info.plist. –

1

Ho visto questo su dispositivi Jailbroken utilizzando IOS 2.1 con una versione precedente di Cydia. In questo caso, una volta che Cydia è stato aggiornato, il metodo info.plist + ... statusBarHidden = YES ha funzionato.

In alternativa, vedere se [application setStatusBarStyle: ...] è utile.

-isdi-

1

stavo vedendo un problema simile su un iPod Touch 2G (3.1.3), in cui un rettangolo nero - stesse dimensioni della barra di stato - stava mostrando al di sopra del Default.png.

La soluzione a questo problema ha comportato la creazione dell'immagine default.png 320x480 rispetto al suo 640x960 originale. La soluzione esatta era quella di creare un [email protected] usando le dimensioni più grandi.

5

nel info.plist c'è anche una chiave chiamata "Barra di stato inizialmente nascosta" che deve essere controllata. Nasconderà la barra di stato durante il caricamento di default.png

+0

+1 Questa è la risposta reale, che consente di visualizzare nuovamente la barra di stato ad un certo punto più avanti nell'app. – luvieere

5

È più facile di così. Almeno in Xcode 4 puoi semplicemente aggiungere una voce "Barra di stato inizialmente nascosta" al plist e impostarne il valore su YES.

status bar entry in plist

Problemi correlati