for Steve (PoPView detection or splitView navigationBar RootViewControll) [splitview iPad]
Yuo must create a class method (setLand: int i) in the RootViewController, called from detailviewcontroller in this method:
- (void)splitViewController: (UISplitViewController*)svc willShowViewController:(UIViewController *)aViewController invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem {
and
- (void)splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc {
and on the RootViewController:
static int landscape=2; ... // SetMethod for class variable landscape + (void)setLand:(int)i { if(landscape!=i){ landscape = i; } }
and finally in RootViewController
- (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; if(landscape == 1) { //LANDSCAPE! CUSTOM FOR LANDSCAPE self.navigationController.navigationBar.barStyle =... } else if(landscape == 0) { //PORTRAIT! CUSTOM FOR PORTRAIT self.navigationController.navigationBar.barStyle =... } }
.. this works well in my application, editing custom landscape / portrait navigation
source share