iphone 切换界面

在界面的跳转有两种方法:

一种方法是先删除原来的界面,然后在插入新的界面:如下代码 
  if (self.rootViewController.view.superview == nil) { 
   [singleDollController.view removeFromSuperview]; 
   [self.view insertSubview:rootViewController.view atIndex:0]; 
   } 
   else { 
   [rootViewController.view removeFromSuperview]; 
   [self.view insertSubview:singleDollController.view atIndex:0]; 
   } 

  使用这种方式无法实现界面跳转时的动画效果。 

  另一中方式为将跳转的界面的Controller放入到UINavigationController中,使用push或pop实现跳转:使用这种方式可用实现动画效果 
  navController = [[UINavigationController alloc]init]; 
   [navController setNavigationBarHidden:YES]; 
   [window addSubview:navController.view]; 
   
   rootView = [[RootViewController alloc] initWithNibName:@"RootViewController" bundle:nil]; 
   [navController pushViewController:rootView animated:NO]; 
   
  /// 
  self.singleDollView = view; 
   [UIView beginAnimations:nil context:NULL]; 
   [UIView setAnimationDuration:0.5]; 
   
   [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.navController.view cache:NO]; 
   
   [self.navController pushViewController:self.singleDollView animated:NO]; 
   [UIView commitAnimations];

posted on 2011-06-28 16:04  风乔  阅读(390)  评论(0编辑  收藏  举报

导航