Ho un'applicazione per iPhone che desidero iniziare con la barra di stato nascosta, mostrare una schermata iniziale e riattivare la barra di stato quando viene caricato il contenuto da mostrare (ci vogliono alcune volte dal momento che deve essere caricato su internet), utilizzando [[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES]
. Voglio che la mia vista del contenuto venga ridimensionata e posizionata correttamente dopo che la barra di stato è mostrata e nascosta. Voglio che la mia applicazione sia in grado di funzionare con qualsiasi orientamento del dispositivo (forse escludendo l'orientamento top-down come specificato nelle linee guida Apple).ridimensionamento del contenuto dopo che la barra di stato dell'iPhone è mostrata/nascosta
Il mio problema è che non riesco a far apparire l'applicazione come dovrebbe. O mostra uno spazio vuoto di 20pt dopo l'autorotazione o è nascosto sotto la barra di stato quando appare.
Quale dovrebbe essere il modo corretto di gestirlo?
Non l'ho ancora testato, ma credo che gli stessi problemi si presenterebbero dalla barra delle chiamate in arrivo.
EDIT:
cercherò di spiegare meglio qual è il problema. All'avvio dell'applicazione, la barra di stato è nascosta e nel sistema di coordinate della finestra l'angolo superiore dell'area visibile della finestra è 0,0 nel sistema di coordinate della finestra. Quindi faccio scorrere nella barra di stato. Questo non cambia la dimensione della finestra, quindi 0,0 punti è ora nascosto dietro la barra di stato. In alto a sinistra dell'area visibile della finestra è 0,20 e devo spostare la vista su quelle coordinate (e ridimensionarla correttamente a 320 * 460). Ma se ruoto il dispositivo, quindi di nuovo alla posizione originale, la coordinata in alto a sinistra dell'area della finestra visibile diventa di nuovo 0,0, e la finestra viene ora dimensionata a 320 * 480.
Una soluzione è mantenere una bandiera che dice se il telefono è stato ruotato prima, ma non c'è un modo per non modificare le coordinate della finestra quando ruoto in un'altra posizione e poi di nuovo?
Hanno hai impostato le maschere autoresizing sulla tua vista? – titaniumdecoy