ABCustomUINavigationController ABC定制视图导航控制器
 The screen is split in squares and each one rotates until showing the 
      new controller. It has two animation variation: 
屏幕被分割成了许多的小方块,每一个小方块都会翻转,直到显示出新的视图控制器.他有着两个参数可改:(本人试验了,效果相当好)
The views are showns in differents cube‘s faces. It has two animation 
      variation: 
视图被显示在不同的长方体的面上.他有着两个参数可改 
For using that component you only have to copy the 
      SquaresFlipNavigation folder into your project and create the navigation 
      controller as:
要使用这个组件呢,你仅仅需要拷贝SquaresFlipNavigation文件夹到你的工程项目中,然后创建一个导航控制器,就像下面这样:
import 
      "FlipSquaresNavigationController.h"//弹跳的方块效果[[FlipSquaresNavigationController 
      alloc] 
      initWithRootViewController:self.viewController];
or
或者
#import 
      "CubeNavigationController.h"//长方体效果[[CubeNavigationController 
      alloc] 
      initWithRootViewController:self.viewController]; 
and 
      pushing and pop normally with navigation methods:
还有,你使用之前导航控制器的常规的方法就行了:
- 
      (void)pushViewController:(UIViewController *)viewController 
      animated:(BOOL)animated
- (UIViewController 
      *)popViewControllerAnimated:(BOOL)animated
- (NSArray 
      *)popToRootViewControllerAnimated:(BOOL)animated
- (NSArray 
      *)popToViewController:(UIViewController *)viewController 
      animated:(BOOL)animated
      原文:http://www.cnblogs.com/YouXianMing/p/3677162.html