1、UINavigationController, 继承UIViewController,UINavigationController以栈的形式保存子控制器
1)把控制器添加到导航控制器栈里有两种方式:
导航控制器 UINavigationController *nav = [[UINavigationController alloc] init];
比如有一个控制器:UIViewController *control = [[UIViewController alloc] init];
第一种方式:[nav addChildViewController:control];
第二种方式:[nav pushViewController:control animated:YES];
2)从导航控制器栈里中移出栈顶的控制器:- (UIViewController *)popViewControllerAnimated:(BOOL)animated;
回到指定的子控制器:- (NSArray *)popToViewController:(UIViewController *)viewController ainimated:(BOOL)animated;
回到根控制器:- (NSArray *)popToRootViewController ainimated:(BOOL)animated;
3)UINavigationItem的属性:
//左上角的返回按钮 @property(nonatomic, retain) UIBarButtonItem *backBarButtonItem; //中间的标题视图 @property(nonatomic, retain) UIView *titleView; //中间的标题文字 @property(nonatomic, copy) NSString *title; //左上角的视图 @property(nonatomic, retain) UIBarButtonItem *leftBarButtonItem; //右上角的视图 @property(nonatomic, retain) UIBarButtonItem *rightButtonItem;