一、初始化
ViewController *viewController = [[ViewController alloc]init];
// 导航控制器初始化 设置导航控制器的第一个页面
UINavigationController *nv = [[UINavigationController alloc]initWithRootViewController:viewController];
self.window.rootViewController = nv;
二、MVC(设计方式)Model(模型 数据 或者 逻辑运算 操作)- View(视图)-Controller(视图控制器)
所有的iOS应用程序基本都使用 Model-View-Controller 或称 MVC 架构。从架构角度来看 Model、View和Controller是一个iOS应用程序的 三个 重要组件 。
三、通过点击按钮调到指定页面需要先将跳转页面初始化。
TwoViewController *two = [[TwoViewController alloc]init];
// 通过导航控制器跳到下一个页面
[self.navigationController pushViewController:two animated:YES];
四、跳转页面
1、当跳转到页面时,如果没有设置背景颜色,就会出现push卡顿现象,所以需要先设置背景颜色。
self.view.backgroundColor = [UIColor purpleColor];
2、设置导航栏的标题
self.title = @“登录";
3、修改控制栏上按钮的属性
1>获取控制栏上的左边按钮
UIBarButtonItem *left = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(back)];
2>自定义导航栏导航文字
UIBarButtonItem *back = [[UIBarButtonItem alloc]initWithTitle:@"返回" style:UIBarButtonItemStylePlain target:self action:@selector(back)];
self.navigationItem.leftBarButtonItem = back;
3>在返回方法中实现如下方法即可放回上一页面
[self.navigationController popViewControllerAnimated:YES];
4>在导航栏右边加一张按钮图片
1)先初始化设置一个按钮
2)添加至导航控制器中
方法一:
[self.navigationController.navigationBar addSubview:按钮];
方法二:
UIBarButtonItem *item = [[UIBarButtonItem alloc]initWithCustomView:right];
self.navigationItem.rightBarButtonItem = item;
5>返回首页方法
[self.navigationController popToRootViewControllerAnimated:YES];
6>返回指定页面方法
// viewControllers 记录了 所有push压栈过的viewControllers
// 在不想返回上一个页面 也不想返回首页的时候
[self.navigationController popToViewController:self.navigationController.viewControllers[1] animated:YES];