首先,您需要在您的層次結構恢復到這樣的事情:
UITabBarController (BASE)
|
|___ UINavigationController
|
|___ UITableViewController (PRODUCTS)
|
|___ UIViewController (PRODUCT DETAILS)
您需要在TabBarController添加一個UINavigationController,那麼你會用它來推動產品的詳細信息。
上添加TabBarController一個UINavigation:
UITabBarController *tabBarController = [[UITabBarController alloc] init];
UINavigationController *tableNavController_1 = [[[UINavigationController alloc] initWithRootViewController:YourProductViewController_1] autorelease];
UINavigationController *table2NavController_2 = [[[UINavigationController alloc] initWithRootViewController:YourProductViewController_2] autorelease];
tabBarController.viewControllers = [NSArray arrayWithObjects:tableNavController_1, table2NavController_2, nil];
//then add the controller to view like,
// this:
[window addSubview:tabBarController.view];
[window makeKeyAndVisible];
//or this:
[self.view addSubview:tabBarController.view];
我建議你創建一個新的UITableViewController每個ProductViewController然後使用委託方法:- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
推詳細視圖:
DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"Nib name" bundle:nil];
// Pass the selected object to the new view controller.
[self.navigationController pushViewController:detailViewController animated:YES]
[detailViewController release];
感謝您的幫助@Legolas,本教程使用Xcode3完成,其中一些步驟不存在於我正在使用的Xcode4中!你可以請引導我什麼添加使我的UITableViewController單元可點擊加載使用UINavigationController的細節UIViewController? – DeZigny