以编程方式设置UITabBar标题

时间:2011-05-19 09:15:54

标签: iphone cocoa-touch ios uitabbar

我按照下面的方式添加了tabbar: -

FirstViewController *obj_FirstViewController = [[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil]; SecondViewController *obj_SecondViewController = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil]; ThirdViewController *obj_ThirdViewController = [[ThirdViewController alloc] initWithNibName:@"ThirdViewController" bundle:nil];

navigation1 = [[UINavigationController alloc] initWithRootViewController:obj_FirstViewController];  
navigation2 = [[UINavigationController alloc] initWithRootViewController:obj_SecondViewController];
navigation3 = [[UINavigationController alloc] initWithRootViewController:obj_ThirdViewController];

MainTabBar = [[UITabBarController alloc] init];
MainTabBar.delegate=self;
[MainTabBar setViewControllers:[NSArray arrayWithObjects:navigation1,navigation2,navigation3,nil]];
MainTabBar.view.frame=self.view.frame;
MainTabBar.selectedIndex=0;
[self.view addSubview:MainTabBar.view]

通过在(void)viewDidLoad中写这个,我在viewcontroller中得到了3个标签。但问题是我想将标签的名称设置为1)主页2)收藏夹3)关于我们

我曾尝试过编写以下代码:

- 1)obj_FirstViewController.tabBarItem.title=@"Home"; 2)self.title = @"My View Controller";

但这不起作用。任何人都可以帮我如何编程这样做。在哪里写行,以便在我的标签栏中获得这个3名称

2 个答案:

答案 0 :(得分:1)

试试这种方式......

NSMutableArray *controllers = [[NSMutableArray alloc] init];
FirstViewController *obj_FirstViewController = [[FirstViewController alloc] init];
                [obj_FirstViewController setTitle:@"first"];
                UITabBarItem *item = [[[UITabBarItem alloc] setTabBarItem:          [[[UITabBarItem alloc] initWithTitle: @"First") image:[UIImage imageNamed:@"first.png"] tag:2] autorelease]];
                [obj_FirstViewController setTabBarItem:item];
                [controllers addObject:obj_FirstViewController];
                [obj_FirstViewController release];

答案 1 :(得分:1)

请试试这个

FirstViewController *obj_FirstViewController = [[FirstViewController alloc]initWithNibName:@"FirstViewController" bundle:nil]; 
SecondViewController *obj_SecondViewController = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil]; 
ThirdViewController *obj_ThirdViewController = [[ThirdViewController alloc] initWithNibName:@"ThirdViewController" bundle:nil];

navigation1 = [[UINavigationController alloc] initWithRootViewController:obj_FirstViewController];  
navigation2 = [[UINavigationController alloc] initWithRootViewController:obj_SecondViewController];
navigation3 = [[UINavigationController alloc] initWithRootViewController:obj_ThirdViewController];

navigation1.title=@"Home";
navigation2.title=@"Second";

 MainTabBar = [[UITabBarController alloc] init];
MainTabBar.delegate=self;
[MainTabBar setViewControllers:[NSArray   arrayWithObjects:navigation1,navigation2,navigation3,nil]];
 MainTabBar.view.frame=self.view.frame;
 MainTabBar.selectedIndex=0;
[self.view addSubview:MainTabBar.view]