带有从sql读取的Navigation / Tableviews的TabViewControllers

时间:2011-05-16 01:22:04

标签: iphone cocoa-touch

早安男女/女孩

我是iPhone的编程新手,我做了很多例子。我可以成功创建tabview项目,并从SQL打开tableviews。

然而,我发现很难尝试将它们放在一起,我不确定我是否能很好地接待代表。

我想问一个人是否有可能请帮助我解决这个问题,以便更好地理解这一点。

我正在尝试做的事情是有一个TabView项目,每个选项卡都有一个navigationcontroller页面(所以一个表格上面有搜索结果,表格视图)数据正在从sqllite3或datacore填充。

多数民众赞成。

看起来很简单,但很抱歉,我需要看一个工作示例来了解如何加载这些多个控制器。你是否将每个人委托给另一个班级?如果有人可以做一个例子,我可以加载并查看。

谢谢你 伊甸

1 个答案:

答案 0 :(得分:0)


我总是喜欢通过编码创建复杂的多视图。 您需要从基于视图的应用程序开始。然后在appDelegate文件中创建一个UITabbarController。

Appdelegate.h  

UITabBarController *tabBarController;  
// set properties  

Appdelegate.m  

// Synthsize  

tabBarController = [[UITabBarController alloc] init];  
tabBarController.delegate=self;  

//Adding Search,Nearby,Map,AboutUs,Favorites Tabs to tabBarController    
Search * search = [[Search alloc] init];    
UINavigationController *searchNav = [[UINavigationController alloc] initWithRootViewController:search];    

Nearby* nearby = [[Nearby alloc] init];    
UINavigationController *nearbyNav = [[UINavigationController alloc] initWithRootViewController:nearby];    

Map* map = [[Map alloc] init];    
UINavigationController *mapNav = [[UINavigationController alloc] initWithRootViewController:map];    

AboutUs* aboutUs = [[AboutUs alloc] init];    
UINavigationController *aboutUsNav = [[UINavigationController alloc] initWithRootViewController:aboutUs];    

Favorites* favorites = [[Favorites alloc] init];    
UINavigationController *favoritesNav = [[UINavigationController alloc] initWithRootViewController:favorites];    

NSArray* controllers = [NSArray arrayWithObjects:searchNav,nearbyNav,mapNav,aboutUsNav,favoritesNav, nil];    
tabBarController.viewControllers = controllers;    

[window addSubview:tabBarController.view];      

您可以据此管理要在哪个选项卡中放置导航控制器或仅放置视图控制器。

然后在上面提到的每个视图控制器中,你需要实现

- (id)init {}  

您可以在其中设置标签名称和图像。