将UITabBar移动到UITabBarController的顶部?

时间:2011-07-09 08:02:17

标签: objective-c uitabbarcontroller uitabbar

我刚刚设计了一个使用顶栏的应用程序,该顶栏在三个UIViewControllers之间切换。我的第一个想法是使用UITabBarController,因为它非常类似。

但是,tabBar位于底部,在我的PSD中,它位于顶部。无论如何我可以改变吗?我在库中看到我可以在UITabBar中拖动,但我不知道如何从那里更改页面。

请帮忙! 库尔顿

2 个答案:

答案 0 :(得分:12)

希望以下代码有帮助

UITabBarController *tabC = [[UITabBarController alloc]init];
    tabC.tabBar.frame = CGRectMake(0, 0, 320, 70);

    NSArray *arr = [[NSArray alloc]initWithObjects:firstObj,secObj, nil];

    tabC.viewControllers = arr;

    [self.window addSubview:tabC.view];

为我工作好

答案 1 :(得分:4)

我认为可以做到,但你应该知道this

  

“重要:在iPhone OS 3.0及更高版本中,当与标签栏控制器对象关联时,不应尝试使用此类的方法和属性来修改标签栏。以这种方式修改标签栏结果抛出异常。相反,对标签栏或其项目的任何修改都应通过标签栏控制器界面进行。您仍然可以直接修改与标签栏控制器无关的标签栏对象。“

因此,在您的UI中(我假设您在Interface Builder中定义它),实例化一个UITabBar对象(通过在IB库中选择它并将其拖到IB中的视图中)。选择默认位置,并定义此选项卡栏自动调整的方式(使用信息窗口的大小窗格)。然后,在UITabBar类型的视图控制器中添加一个插座,最后将标签栏对象连接到标签栏插座。

完成此操作后,您可以在视图控制器的viewDidLoad方法中自定义所需的标签栏的任何属性。