Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UITABBARC控制器中的双UINavigationBar_Ios_Objective C_Iphone_Uitabbarcontroller_Uinavigationbar - Fatal编程技术网

Ios UITABBARC控制器中的双UINavigationBar

Ios UITABBARC控制器中的双UINavigationBar,ios,objective-c,iphone,uitabbarcontroller,uinavigationbar,Ios,Objective C,Iphone,Uitabbarcontroller,Uinavigationbar,我们在AppDelegate中有一个UINavigationViewController根viewController: Restore *callRestore=[[Restore alloc]initWithNibName:@"Restore" bundle:nil]; self.navigationController = [[UINavigationController alloc] initWithRootViewController:callRestore]; self.win

我们在
AppDelegate
中有一个
UINavigationViewController
viewController

 Restore *callRestore=[[Restore alloc]initWithNibName:@"Restore" bundle:nil];
 self.navigationController = [[UINavigationController alloc] initWithRootViewController:callRestore];
 self.window.rootViewController = self.navigationController;
我们正在从上面的还原推送一个新的
viewController
TabViewController
):

 callTabView=[[TabViewController alloc] initWithNibName:@"TabViewController" bundle:nil];
 [self.navigationController pushViewController:callTabView animated:YES];
在该
选项卡ViewController
中,我们以编程方式添加
UITabBarController
作为子视图,在此
UITabBarController
中,我们有5个
UINavigationBarController
作为视图控制器:

NSArray* controllers = [NSArray arrayWithObjects:navControllerDashboard, navControllerAccounts, navControllerTransation,navControllerCallDisplayReports,navControllerMore, nil];
self.tabBarController.viewControllers = controllers;
self.tabBarController.delegate = self;
self.tabBarController.view.frame = self.view.frame;
[self.view addSubview:self.tabBarController.view];
当我们从这5个
UINavigationViewController
旋转任何视图时,我们在
横向
纵向
模式的顶部都会得到2个
UINavigationBar

检查下图

didRotateFromInterfaceOrientation未从这些5 UINavigationViewController视图调用


有任何帮助吗?

当您将视图控制器作为子视图手动添加到另一个视图控制器时,必须执行以下操作:

UIViewController *parent = ...;
UIViewController *child = ...;

[child willMoveToParentViewController: parent];
[parent addChildViewController: child];
[parent.view addSubview: child.view];
[child didMoveToParentViewController:parent];

这会将所有事件传播到子视图控制器,并可能删除意外行为。

当您将视图控制器作为子视图手动添加到另一个视图控制器时,必须执行以下操作:

UIViewController *parent = ...;
UIViewController *child = ...;

[child willMoveToParentViewController: parent];
[parent addChildViewController: child];
[parent.view addSubview: child.view];
[child didMoveToParentViewController:parent];

这将把所有事件传播到子视图控制器,并可能删除意外行为。

callTabView是UIViewController。我们正在初始化tabBarController并添加如下tabBarController:self.tabBarController=[[UITabBarController alloc]init];[self.view addSubview:self.tabBarController.view];callTabView是UIViewController。我们正在初始化tabBarController并添加如下tabBarController:self.tabBarController=[[UITabBarController alloc]init];[self.view addSubview:self.tabBarController.view];