上一篇主要讲到了导航栏的基本创建和navigation bar的常有属性,这篇的话就主要讲解一下navigation controller 栈和其他的一些小技巧。
    
     topViewController
    
   
显示当前在navigation controller栈顶的view controller
[self.navigationController topViewController]
    
     visibleViewController显示当前显示的view controller
    
   
[self.navigationController visibleViewController]
    
     获取navigation controller当前栈中的所有的view controllers
    
   
[self.navigationController viewControllers]
    
     变换navigation controller的栈结构,加载新的view controllers
    
   
[self.navigationController setViewControllers:vcArray]
    
     跳转到指定的view controller
    
   
[self.navigationController popToViewController:vc animated:YES]
    
     跳转到root view controller
    
   
[self.navigationController popToRootViewControllerAnimated:YES]
    
     小技巧归总
    
   
    
     当前页面如果需要弹出keyboard,那么可以在弹出时就隐藏掉导航栏
    
   
[self.navigationController setHidesBarsWhenKeyboardAppears:YES];
    
     单击有navigation bar的页面,就会重复隐藏或显示navigation bar
    
   
[self.navigationController setHidesBarsOnTap:YES];
    
     上下拉动又navigation bar的页面,就会重复隐藏或显示navigation bar
    
   
[self.navigationController setHidesBarsOnSwipe:YES];
    
     隐藏或者显示navigation bar
    
   
[self.navigationController setNavigationBarHidden:YES];
 
