标题不会出现在TabBarItem中,但图像会出现

时间:2012-01-03 15:20:19

标签: iphone objective-c xcode tabbarcontroller

我添加了一个标签栏控制器,我正在尝试为该项添加标题和图像,但只显示图像。标题无处可见。任何建议将不胜感激。

_tabbarController = [[UITabBarController alloc] init];
_showsController = [[showsController alloc] init];
_showsController.title = @"Test1";
_showsController.tabBarItem.image = [UIImage imageNamed:@"Glass.png"];
[_tabbarController setViewControllers: [NSArray arrayWithObjects: _showsController, nil]];

更新: 在搜索stackoverflow一段时间后,我终于通过添加以下代码找到了解决方案: * self.view = _tabbarController.view; *

我很抱歉没有提供更多信息(这不是rootViewController,而是添加为子视图),谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

您还需要在UITabBarItem对象上设置标题。

_showsController.tabBarItem.title = _showsController.title;

就个人而言,我更喜欢让UIViewController子类尽可能处理自己的标题。这使您的代码更加自包含,并不总是强制UIViewController的创建者正确初始化它。

例如,在你的UIViewController子类中:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    if ((self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]))
    {
        UITabBarItem *item = [[UITabBarItem alloc] initWithTitle:@"Test1"
                                                           image:[UIImage imageNamed:@"Glass.png"]
                                                             tag:1];
        [self setTabBarItem:item];
        [item release];
    }

    return self;
}

答案 1 :(得分:0)

您需要设置UITabBarItem标题:

 _showsController.tabBarItem.title = @"Test1";

或者一次性设置它们:

_showsController.title = _showsController.tabBarItem.title = @"Test1";