我一直在寻找几周,并且没有运气试图找到Xcode 4的教程,展示如何将表视图添加到Tab Bar应用程序。我想知道你是否能指出我正确的方向?
由于
答案 0 :(得分:2)
任何TabBarController教程都应该这样做,因为你将UIViewControllers添加到标签栏。对于表视图,只需创建一个UITableViewController。您应该能够将其添加到选项卡栏控制器...或任何其他视图控制器。例如,如果您发现其他教程使用navigationController执行TabBar ...只需使用UITableViewController替换教程的navigationController部分。 UItableViewControllers上还有很多文档和教程。
例如,如果您在app delegate didfinishLaunchingWithOptions中查看此代码。 Pior对此,创建了一个MyTableViewController(UITableViewController)和其他一些UIViewController。
// View Controllers for tabController - could be UItableViewControllers or any
// other UIViewController. You will add this to the tabController
NSMutableArray *viewControllers = [[NSMutableArray alloc] init];
MyTableViewController *myTable = [[MyTableViewController alloc] initWithNibName:@"MyTableViewController" bundle:nil];
[viewControllers addObject:myTable];
SomeOtherUIViewController *other = [[SomeOtherUIViewController alloc] initWithNibName:@"SomeOtherUIViewController" bundle:nil];
[viewControllers addObject:other];
// add the UIViewControllers to the tabController
[tabController setViewControllers:viewControllers];
// add tabbar and show
[[self window] addSubview:[tabController view]];
[self.window makeKeyAndVisible];
return YES;
然后在您添加到标签栏的每个视图控制器中,确保在其init中将tabbar项添加到它们
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self)
{
UITabBarItem *barItem = [[UITabBarItem alloc]
initWithTitle:@"Progress"
image:[UIImage imageNamed:@"report.png"] tag:2];
[self setTabBarItem:barItem];
[barItem release];
}
return self;
}