将 UITabBar 移动到 UITabBarController 的顶部?

发布于 2024-11-19 17:12:35 字数 210 浏览 4 评论 0原文

我刚刚完成了一个应用程序的设计,该应用程序使用顶部栏在三个 UIViewController 之间切换。我的第一个想法是使用 UITabBarController,因为它的工作方式非常相似。

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

请帮忙! 库尔顿

I just finished designing a application that uses a top bar that toggles between three UIViewControllers. My first thought was to use a UITabBarController, since it works very simular.

However, the tabBar is at the bottom and in my PSD, it's at the top. Is there anyway I can change it? I see in the library I can drag in a UITabBar, but I don't know how to get it to change pages from there.

Please help!
Coulton

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

紫瑟鸿黎 2024-11-26 17:12:35

希望下面的代码

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];

对我有帮助

Hope the below code helps

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];

Worked fine for me

乖不如嘢 2024-11-26 17:12:35

我认为这是可以做到的,但你应该知道

“重要提示:在 iPhone OS 3.0 及更高版本中,当标签栏与标签栏控制器对象关联时,不应尝试使用此类的方法和属性来修改标签栏。以这种方式修改标签栏会导致相反,对选项卡栏或其项目的任何修改都应该通过选项卡栏控制器接口进行。您仍然可以直接修改与选项卡栏控制器无关的选项卡栏对象。”

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

完成此操作后,您可以在视图控制器的 viewDidLoad 方法中自定义您想要的选项卡栏的任何属性。

I think it can be done, but you should be aware of this:

"Important: In iPhone OS 3.0 and later, you should not attempt to use the methods and properties of this class to modify the tab bar when it is associated with a tab bar controller object. Modifying the tab bar in this way results in the throwing of an exception. Instead, any modifications to the tab bar or its items should occur through the tab bar controller interface. You may still directly modify a tab bar object that is not associated with a tab bar controller."

So, in your UI (I suppose you defined it in Interface Builder), instantiate a UITabBar object (by choosing it in the IB library and dragging it to your view in IB). Choose the default position and also define the way that this tab bar autoresizes (using the size pane of the info window). Then, add an outlet to your view controller of type UITabBar, and, finally, connect the tab bar object to the tab bar outlet.

Once you have done this, in your view controller's viewDidLoad method you can customize any property of the tab bar that you want to.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文