devo simile progettazione dell'interfaccia utente e sulla base Matt Hall answer e some article Googled, vengo con qualcosa di simile:
- (void)viewDidLoad {
[super viewDidLoad];
if (NSFoundationVersionNumber>NSFoundationVersionNumber_iOS_6_1) {
CGRect statusBarFrame = [self.view convertRect: [UIApplication sharedApplication].statusBarFrame fromView: nil];
UIToolbar *statusBarBackground = [[UIToolbar alloc] initWithFrame: statusBarFrame];
statusBarBackground.barStyle = self.navBar.barStyle;
statusBarBackground.translucent = self.navBar.translucent;
statusBarBackground.autoresizingMask = UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleWidth;
[self.view addSubview: statusBarBackground];
}
}
Dove self.navBar
punti alla barra di navigazione aggiunto in storyboard. Questo è necessario solo nel caso in cui venga eseguito su iOS7, ecco perché ho aggiunto questa condizione (la mia app deve supportare iOS5).
Questo funziona come un fascino.
approccio alternativo (far rispettare dimensione barra di stato) è anche un bene:
- (void)viewDidLoad {
[super viewDidLoad];
if (NSFoundationVersionNumber>NSFoundationVersionNumber_iOS_6_1) {
CGRect statusBarFrame = [self.view convertRect: [UIApplication sharedApplication].statusBarFrame fromView: nil];
self.navBar.frame = CGRectUnion(statusBarFrame, self.navBar.frame);
}
}
ho trovato un'altra soluzione
Credo che questo sia
migliore dal momento che coinvolgono
solo storyboard e nessun codice è necessario.
- Passa vista storyboard al 6,1 modalità (Vedi come: iOS 6.1 e versioni precedenti)
- Selezionare problematico
UINavigationBar
- nella sezione taglie Aggiungi
20
altezza delta "iOS6/7 Delta"
- Interruttore vista posteriore alla modalità 7.0 (visualizza come: iOS 7.0 e versioni successive) e sii felice del risultato.
fonte
2014-01-31 15:18:27
@Caleb vedere http://meta.stackexchange.com/questions/94465/should-moderators-enforce-ndas-for-software-vendors –
@Caleb - Inoltre, i miei pensieri sulla NDA e Stack Overflow può essere trovato in questa risposta su Meta: http://meta.stackexchange.com/questions/184625/why-is-there-an-ios-7-tag/184635#184635 –
@BradLarson Forse dovrei fare un po 'di tempo per rispondere alla tua meta discussione invece di farlo qui. In breve, abbiamo una storia di domande conclusive che violano la NDA di iOS, e penso che sia importante * almeno * segnalare tali domande con un commento. Se mi stai dicendo che la tua posizione è la posizione di tutti i moderatori SO, o di SE in generale, non mi dispiace non votare per chiudere su quella base. OTOH c'è un chiaro valore nelle domande di chiusura a cui non si può rispondere. – Caleb