少尉

嗯。

 

关于splitViewController自己的总结....

关于splitViewController自己的总结....
2011-10-25 18:37

1.// 初始化标签内容
-(void) makeSplitViewController {

int index=0;
 NSMutableArray *controllers = [NSMutableArray arrayWithArray:self.tabBarController.viewControllers];//将tabbarController的ViewControllers放在可变的数组里
    UIViewController *controller = [self.tabBarController.viewControllers objectAtIndex:index];//获得viewController的试图
 //创建五大视图 除购物车全屏显示以外 都是以模态视图的方式进行显示
 self.detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailView" bundle:nil];
 self.detailNav = [[UINavigationController alloc] initWithRootViewController:self.detailViewController];//将detailViewController作为UINavigationController的根试图
 //RootViewController 横屏下控制左侧的根视图 横屏下要设置根视图的标题
 self.rootViewController = [[RootViewController alloc] initWithStyle:UITableViewStylePlain];
 self.rootViewController.detailViewController = self.detailViewController;
 self.rootViewController.navigationItem.title = @"分类";
 self.nav = [[UINavigationController alloc] initWithRootViewController:rootViewController];
 
 //GomeSplitViewController 竖屏下控制悬浮窗体 竖屏下要控制导航栏上新添加的按钮对悬浮窗体的显示控制
 self.splitViewController = [[GomeSplitViewController alloc] init];
 self.splitViewController.tabBarItem = controller.tabBarItem;
 self.splitViewController.viewControllers = [NSArray arrayWithObjects:nav, detailNav, nil];
 self.splitViewController.delegate = self.detailViewController;
 [controllers replaceObjectAtIndex:index withObject:splitViewController];
   
    index = 2;
 controller = [tabBarController.viewControllers objectAtIndex:index];
 self.thirdViewController = [ThirdViewController new];
 self.thirdViewController.navigationItem.title = @"购物车";
 self.thirdViewController.tabBarItem = controller.tabBarItem;
 self.thirdNav  = [[UINavigationController alloc] initWithRootViewController:thirdViewController];
 [controllers replaceObjectAtIndex:index withObject:thirdNav];

    //重置导航视图内容
    self.tabBarController.delegate = self;//将Gome_HDAppDelegate作为tabBarController的代理
    self.tabBarController.viewControllers = controllers;

}

2.UITabBar的代理函数

-(BOOL)tabBarController:(UITabBarController *)tabBarController_ shouldSelectViewController:(UIViewController *)viewController{
 return YES;
}

- (void)tabBarController:(UITabBarController *)tabBarController_ didSelectViewController:(UIViewController *)viewController {

            int index = self.tabBarController.selectedIndex;//获得tabBar的下方标签的索引

             //更改上次用户所选的的标签数
            UIViewController *controller0 = [tabBarController_.viewControllers objectAtIndex:0];
            switch (index) {

              }

posted on 2011-11-19 11:48  moonvan  阅读(4640)  评论(0编辑  收藏  举报

导航