coreplot demo增加storyboard支持
CorePlotDemo代码是 CorePlot曲线图、饼图、柱状统计图表库的demo程序。 使用xib作为UI
步骤如下:
1.我们先删除mainwindow.xib文件
2.修改main.m
main函数该成:
#import "CorePlotDemoAppDelegate.h"//引入头文件
int main(int argc,char *argv[]) {
// NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
@autoreleasepool {
returnUIApplicationMain(argc, argv, nil,NSStringFromClass([CorePlotDemoAppDelegateclass]));
}
// [pool release];
}
3.新建一个storyboard文件
4.工程属性设置从storyboard文件加载
选中 “CorePlotDemo” -》 Summary 下的 Main Storyboard 设置你刚新建的storyboard文件
5. storyboard文件中,新建tabBarController容器,并新建三个viewController, tabBarController和三个viewController建立联系(右键control ,拉线到各个viewController,弹出菜单选第一项) ,设置tabBarController的identifier属性为tabBarController,下面需要代码中用到
6.三个viewController(rootViewController, pieChartViewController,barChartViewController)关联到 class文件(RootViewController, PieChartViewController,BarChartViewController)
7建立关联后,开始修改代码,从代码中控制三个vewController的显示
我们修改CorePlotDemoAppDelegate.m源代码文件
7.1 修改如下,下面/* */ 之间的代码不变
/* 这中间的代码不变 www.2cto.com
//1.初始化rootViewController
self.rootViewController = [[[RootViewController alloc]init] autorelease];
//2.构造controllers视图
BarChartViewController *barChart = [[BarChartViewControlleralloc] init];
PieChartViewController *pieChart = [[PieChartViewControlleralloc] init];
NSArray *controllers = [[NSArrayalloc] initWithObjects:self.rootViewController, barChart, pieChart,nil];
[barChartrelease];
[pieChartrelease];
//3.设置tabBar上的条目
UITabBarItem *tabBarItemOne = [[UITabBarItemalloc] initWithTitle:@"Scatter"image:nil tag:0];
UITabBarItem *tabBarItemTwo = [[UITabBarItemalloc] initWithTitle:@"Pie"image:nil tag:1];
UITabBarItem *tabBarItemThree = [[UITabBarItemalloc] initWithTitle:@"Bar"image:nil tag:2];
*/
7.1.1 注释下面这行
//tabBarController = [[UITabBarController alloc] init]; //这里我们已经在storyboard绘制UITabBarController
7.1.2 修改增加下面相关代码
NSString *tbControllerId =@"tabBarController";
UIStoryboard *sb = [UIStoryboardstoryboardWithName:@"baStoryboard"bundle:nil];//获取storyboard对象指针
UITabBarController *tbController = [sbinstantiateViewControllerWithIdentifier:tbControllerId];//获取tabbarcontroller
tbController.viewControllers = controllers;
[[tbController.viewControllersobjectAtIndex:0]setTabBarItem:tabBarItemOne];
[[tbController.viewControllersobjectAtIndex:1]setTabBarItem:tabBarItemTwo];
[[tbController.viewControllersobjectAtIndex:2]setTabBarItem:tabBarItemThree];
此时已经完成在storyboard的tabBarController中设置了三个viewController。运行就可以显示tabBarController中的视图了。
摘自 gaoxuefeng的专栏
相关新闻>>
- 发表评论
-
- 最新评论 更多>>