1、控制器的初始化,为控制器添加导航控制器
ViewController *rootViewController = [[ViewController alloc]init];UINavigationController *navigation = [[UINavigationController alloc]initWithRootViewController:rootViewController];
self.window.rootViewController = navigation;
2.控制器之间的导航
SettingViewController *SettingViewVC = [[SettingViewController alloc]init];
[self.navigationController pushViewController:SettingViewVC animated:YES];
3.取消导航返回
[self.navigationItem setHidesBackButton:TRUE animated:NO];
4.显示或隐藏,导航栏、工具栏目
[self.navigationController setNavigationBarHidden:NO animated:YES];
[self.navigationController setToolbarHidden:NO animated:YES];
5.显示导航栏的标题
self.navigationItem.title = @"标题";
6.用图片做导航栏
[self.navController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navigation.png"] forBarMetrics:UIBarMetricsDefault];
7.自定义用图片做rightBarButtonItem
UIButton *rightbutton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 28, 26)];
[rightbutton setBackgroundImage:[UIImage imageNamed:@"rightBar.png"]forState:UIControlStateNormal];
[rightbutton addTarget:self action:@selector(selectrightAction)forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *menuButton = [[UIBarButtonItem alloc] initWithCustomView:rightbutton];
// 由于导航按钮离边框的距离太远,影响美,观所有调整 leftBarButtonItem 在 iOS7 下面的位置
if(([[[UIDevice currentDevice] systemVersion] floatValue]>=7.0?20:0)){
UIBarButtonItem *negativeSpacer = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
negativeSpacer.width = -8;
self.navigationItem.rightBarButtonItems = @[negativeSpacer, menuButton];
}else
self.navigationItem.rightBarButtonItem = menuButton;