UITabBar没有排在最前面?

时间:2011-11-08 19:51:53

标签: objective-c uitabbarcontroller ios5

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

从此

self.view = tabController.view;

到此

[self.view addSubview:tabController.view];

现在tabController从视图切换到subView,它没有正确对齐。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

UITabBarController应该直接在UIWindow上使用,你看到的差距是因为它自动将它自己置于状态栏之上。

我认为最好的解决方案是在你的app delegate中执行此操作:

[window addSubview:[tabController view]];

或者您可以更改tabController的视图框架:

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

魔法20是状态栏的高度。