UINavigationController

1.常用方法
1)创建导航控制器
[[UINavigationController alloc] initWithRootViewController:self.viewController];
2)压栈,将控制器压入栈中
[self.navigationController pushViewController:second animated:YES];
3)出栈,从栈中弹出控制器
1> 弹出当前栈顶控制器
[self.navigationController popViewControllerAnimated:YES];
2> 跳到具体某一控制器
[self.navigationController popToViewController:(UIViewController *) animated:(BOOL)];
3> 跳到栈底控制器
[self.navigationController popToRootViewControllerAnimated:YES];

2.使用须知
1> 导航控制器内部有个viewControllers属性(栈)来存放所有的子控制器
@property(nonatomic,copy) NSArray *viewControllers; 
2> 展示在导航控制器上面的永远是栈顶控制器的view

3.导航栏内容
1> 导航栏上面显示的内容,由当前栈顶控制器的navigationItem属性决定
* navigationItem.title : 导航栏的中间标题(也可以直接通过控制器的title属性设置标题)
* navigationItem.titleView : 导航栏的中间控件
* navigationItem.leftBarButtonItem : 导航栏左边的按钮
* navigationItem.rightBarButtonItem : 导航栏右边的按钮

4.导航栏左上角的返回按钮"文字"由上一个控制器的navigationItem.backBarButtonItem决定
* 返回按钮不需要监听(默认的操作就是出栈)

 

posted @ 2014-01-01 23:32  yuan555  阅读(212)  评论(0编辑  收藏  举报