我有一个管理5个视图控制器一个的UITabBarController。我创建自己的“初始化”方法的标签栏的项目,以便加载视图之前他们将被显示出来。我只是想知道有什么办法,我应该这样做,因为似乎有这么多的方法。例如,对于我的DatePickerViewController:

- (id)init {
    if((self = [super init])) {
        // ================ THIS ==========================
        UIImage *clockIcon = [UIImage imageNamed:@"clockicon.png"];
        UITabBarItem *localTabBarItem = [[UITabBarItem alloc]
                initWithTitle:@"Date" image:clockIcon tag:0];
        [self setTabBarItem:localTabBarItem];
        [localTabBarItem release];
        // ================ OR THIS ========================
        [self setTitle:@"Date"];
        UITabBarItem *localTabBarItem = [[UITabBarItem alloc] init];
        [localTabBarItem setImage:[UIImage imageNamed:@"clockicon.png"]];
        [self setTabBarItem:localTabBarItem];
        [localTabBarItem release];
        // ================ OR THIS ========================
        UITabBarItem *localTabBarItem = [[UITabBarItem alloc] init];
        [localTabBarItem setTitle:@"Date"];
        [localTabBarItem setImage:[UIImage imageNamed:@"clockicon.png"]];
        [self setTabBarItem:localTabBarItem];
        [localTabBarItem release];
    }
    return self;
}

哪种方式我应该怎么办呢?为什么是有两个tabBarItem和视图控制器一个标题?我不认为我需要的标签(在第一种方法中设置)。

谢谢!

有帮助吗?

解决方案

那么在我看来,任何一种方式都ok,当你在一个在线声明的UIImage,并将其设置在不同的线,而不是做这一切内嵌可能更readible,但最终你会得到相同的结果

在TabBarItems有一个标题,其是将在标签栏项iteself显示文本。视图控制器有导航控制目的的标题,设置当视图控制器标题显示在NavigationControllers的NavBar。而你需要做的标记,标记是你告诉分开的按钮,当有人点击他们(当u管理在您自己的TabBar)的方式。

其他提示

有几种方法设置标题的原因是为了convienece。你可能想要显示在导航栏一个标题和在标签栏一个标题。

这实际上是相当常见的,因为有较少的显示中的标签栏文本空间。

像可可许多事情,不止一种方法去做一件事。唯一的“正确”,你需要关心的是什么工作最适合你的情况。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top