以编程方式将UITableView添加到UITabBar

时间:2010-06-25 14:47:21

标签: iphone uitableview uitabbar

我有一个TabBar应用程序。我创建了一个名为“Schedule”的UITableView类,它具有匹配的Nib。我想在TabBar中添加Schedule,但我不想通过Interface Builder来实现。当我以编程方式添加它时,我看到了TableView,但它是空白的。我已经向Schedule.m添加了一些NSLog,并且似乎没有调用该类。 Nib和Schedule Class已正确连接。我想我在代码中做了一些错误,我将UITableView添加到TabBar:

// Create View Controllers
UITableViewController *scheduleViewController = [[UITableViewController alloc] initWithNibName:@"Schedule" bundle:nil]; 

// Create UITabBarItems
UITabBarItem *scheduleTabBarItem = [[UITabBarItem alloc] initWithTitle:@"Schedule" image:[UIImage imageNamed:@"calendar.png"] tag:0];

scheduleViewController.tabBarItem = scheduleTabBarItem; 

// Create Array of View Controllers
NSArray *items = [NSArray arrayWithObjects:scheduleNavigationController, nil];

// Add View Controllers to TabBar
[tabBarController setViewControllers:items animated:NO];    

// Add the tab bar controller's current view as a subview of the window
[window addSubview:tabBarController.view];
[window makeKeyAndVisible];

1 个答案:

答案 0 :(得分:0)

您正在实例化UITableViewController,它不包含任何用数据填充表视图的代码。那么你认为表的数据应该来自哪里?如果您已为其编写了自定义UITableViewController子类,则必须在此处实例化此子类(并将其设置为NIB文件中的文件所有者)。