Il comportamento tipico di NavController è quello di ridimensionare quando in porto/paesaggio. Da 44px altezza a 32px credo (dalla cima della mia testa).Ridimensionamento automatico di UINavigationBar in rotazione su orizzontale
Sto utilizzando uno storyboard e ho incluso una barra di navigazione in un VC, non in un controller. Quando si ruota tra verticale e orizzontale, la barra di navigazione non viene ridimensionata automaticamente.
ho visto questa risposta, ma questo non aiuta: Resizing UINavigationBar on rotation
La barra di navigazione è controllore tramite aspetto che viene caricato in App Delegato:
UIImage *portraitImage = [UIImage imageNamed:@"mainNavBar"];
UIImage *landscapeImage = [UIImage imageNamed:@"mainNavBarLandscape"];
[[UINavigationBar appearance] setBackgroundImage:portraitImage forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearance] setBackgroundImage:landscapeImage forBarMetrics:UIBarMetricsLandscapePhone];
[[UINavigationBar appearance] setBackgroundColor:[UIColor blackColor]];
[[UINavigationBar appearance] setTitleTextAttributes: [NSDictionary dictionaryWithObjectsAndKeys:
[UIColor colorWithRed:245.0/255.0 green:245.0/255.0 blue:245.0/255.0 alpha:1.0], UITextAttributeTextColor,
[UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.5],UITextAttributeTextShadowColor,
[NSValue valueWithUIOffset:UIOffsetMake(0, 1)],
UITextAttributeTextShadowOffset,nil]];
[[UINavigationBar appearance] setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleRightMargin];
Purtroppo l'ultima parte non fa differenza e poiché la barra di navigazione sarà inclusa in più controller, non voglio ripetere lo stesso codice di colla nella domanda sopra la risposta a tutti i miei VC per ridimensionarli a rotazione.
Corretto, l'ho notato anche poco dopo la pubblicazione. Grazie – StuartM