Ios 第一次调用setViewControllers时的状态上方的UITabBar
我正在开发的应用程序可以在iOS 7 iPhone上运行。我有一个自定义导航,其中在UIViewController上有一个菜单,其中包含一些按钮和一个UINavigationController,该控制器充当菜单中显示的UIViewController内容的容器。类似facebook的滑动菜单 问题是我需要一个自定义UINavigationBar,所以我不能使用initWithRootViewController初始值设定项在UINavigationController上添加根UIViewController,所以每当用户按下菜单按钮时,我必须使用SetViewController方法 问题是,首先,当菜单控制器加载时,我必须打开屏幕右侧的一个菜单UIViewController,每当我这样做时,导航栏将位于状态栏的顶部。如果我加载了另一个视图控制器,一切正常,导航栏将正常,如果我延迟显示第一个视图控制器0.1秒,导航栏将正常显示 在我设置根UIViewController之后,是否有方法刷新导航控制器,以便屏幕刷新或其他什么Ios 第一次调用setViewControllers时的状态上方的UITabBar,ios,objective-c,iphone,uiviewcontroller,uinavigationcontroller,Ios,Objective C,Iphone,Uiviewcontroller,Uinavigationcontroller,我正在开发的应用程序可以在iOS 7 iPhone上运行。我有一个自定义导航,其中在UIViewController上有一个菜单,其中包含一些按钮和一个UINavigationController,该控制器充当菜单中显示的UIViewController内容的容器。类似facebook的滑动菜单 问题是我需要一个自定义UINavigationBar,所以我不能使用initWithRootViewController初始值设定项在UINavigationController上添加根UIViewCo
self.navigationController = [[UINavigationController alloc] initWithNavigationBarClass:[CustomNavBar class] toolbarClass:nil];
[self.navigationController setViewControllers:@[viewController] animated:NO];
[self.view addSubview:self.navigationController.view];
[self addChildViewController:self.navigationController];
[self.navigationController didMoveToParentViewController:self];
我希望我清楚地知道我想要什么:如果没有,请道歉并添加评论,我会尽快澄清
谢谢。好的,我找到了解决方案 似乎我不得不等到主视图控制器中调用viewDidLayoutSubviews方法,然后在其上添加导航控制器 这样看来,导航栏的位置很好