Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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
Objective c UITabBar未在顶部对齐?_Objective C_Uitabbarcontroller_Ios5 - Fatal编程技术网

Objective c UITabBar未在顶部对齐?

Objective c UITabBar未在顶部对齐?,objective-c,uitabbarcontroller,ios5,Objective C,Uitabbarcontroller,Ios5,我正在我的应用程序中使用UITabBarController。最初我是从SDK 4.3启动应用程序的,后来我转到了SDK 5.0。出于某种原因,我需要更改代码,以使用新的SDK。所以,我改变了密码 由此 self.view = tabController.view; 对此 [self.view addSubview:tabController.view]; 现在,tabController从视图切换到子视图,但没有正确对齐 任何帮助都将不胜感激 UIAbbarController应该直接在U

我正在我的应用程序中使用UITabBarController。最初我是从SDK 4.3启动应用程序的,后来我转到了SDK 5.0。出于某种原因,我需要更改代码,以使用新的SDK。所以,我改变了密码

由此

self.view = tabController.view;
对此

[self.view addSubview:tabController.view];
现在,tabController从视图切换到子视图,但没有正确对齐


任何帮助都将不胜感激

UIAbbarController应该直接在UIWindow上使用,您看到的间隙是因为它会自动将自身置于状态栏上方

我认为最好的解决方案是在应用程序中执行此操作:

[window addSubview:[tabController view]];
也可以更改选项卡控制器的视图框架:

tabController.view.frame = CGRectOffset(tabController.view.frame, 0, -20)
[self.view addSubview:tabController.view];

magic 20是状态栏的高度。

UIAbbarController应该直接在UIWindow上使用,您看到的间隙是因为它自动将自身置于状态栏上方

我认为最好的解决方案是在应用程序中执行此操作:

[window addSubview:[tabController view]];
也可以更改选项卡控制器的视图框架:

tabController.view.frame = CGRectOffset(tabController.view.frame, 0, -20)
[self.view addSubview:tabController.view];

magic 20是状态栏的高度。

谢谢,效果很好!对代码“tabController.view.frame=CGRectOffset(tabController.view.frame,0,-20);”-20应该在y轴上。谢谢,效果很好!对代码“tabController.view.frame=CGRectOffset(tabController.view.frame,0,-20);”-20应位于y轴上的小更改。