[TwistedFate]导航视图控制器
来源:互联网 发布:dijkstra算法与二叉树 编辑:程序博客网 时间:2024/06/02 09:43
导航视图控制器UINavigationController
导航控制器,是iOS中最常⽤的多视图控制器之⼀,它⽤来管理多个视图控制器。
导航控制器可以认为是管理控制器的控制器,主要管理有层级关系的控制器
UINavigationController通过栈的⽅式管理控制器的切换,控制⼊栈和出栈来展⽰各个视图控制器
UINavigationController的ContentView⾥始终显⽰栈顶控制器的view。
初始化并设为根视图控制器
RootViewController *rootVC = [[RootViewController alloc] init];// 初始化时 需要一个根视图控制器 去管理(去显示)UINavigationController *naVC = [[UINavigationController alloc] initWithRootViewController:rootVC];// 只要是UIViewController子类都可以设置为window的根视图控制器self.window.rootViewController = naVC;[rootVC release];[naVC release];
取出管理的数组
NSArray *array = self.navigationController.viewControllers;
界面跳转
跳到下一级界面
SecondViewController *secondVC = [[SecondViewController alloc] init]; // 控制器中有一个导航控制器的属性 // 一旦这个视图控制器被导航控制个管理了 // 那么视图控制器中的 导航控制器属性 就会有值 // 那么这个值 就是管理他的那个导航控制器 [self.navigationController pushViewController:secondVC animated:YES]; [secondVC release];
返回上一级控制器
[self.navigationController popViewControllerAnimated:YES];
导航条UINavigationBar
- 导航条 44
- 状态栏 20
- 导航条的高度就是44 状态的背景 是导航条延伸过去的
设置导航条的背景颜色
self.navigationController.navigationBar.barTintColor = [UIColor cyanColor];
设置背景图片
- 横屏状态下 导航条高32
- 1.图片高度 < 44 效果:平铺
- 2.图片高度 = 44 效果:只覆盖导航条
- 3.图片高度 大于 44 小于 64 效果:平铺
- 4.图片高度 = 64 效果:正好覆盖导航条与状态栏
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"32064"] forBarMetrics:(UIBarMetricsDefault)];
关闭半透明
// iOS 7.0之后 导航条默认时半透明的// 起始点是屏幕的左上角 开始计算// 关闭半透明 后 起始点从导航条下面 开始计算self.navigationController.navigationBar.translucent = NO;// 一般咱们使用默认的半透明状态 不用考虑起始点的
导航栏按钮UIBarButtonItem
三种方式初始化左右按钮
// 标题初始化 左按钮// UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithTitle:@"左按钮" style:(UIBarButtonItemStylePlain) target:self action:@selector(barButtonClick:)];// 设置左按钮 当前页面上的 按钮// self.navigationItem.leftBarButtonItem = barButton;// [barButton release];// 用图片初始化 右边的按钮 UIBarButtonItem *rightBarButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"right"] style:(UIBarButtonItemStylePlain) target:self action:@selector(barButtonRight:)]; self.navigationItem.rightBarButtonItem = rightBarButton; [rightBarButton release];// 用系统的样式初始化左边的按钮UIBarButtonItem *sysetemBarButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:(UIBarButtonSystemItemSave) target:self action:@selector(barButtonClick:)];self.navigationItem.leftBarButtonItem = sysetemBarButton; [sysetemBarButton release];
设置页面的导航栏标题
self.navigationItem.title = @"首页";
在标题位置设置一个视图(位置不能更改 居中显示)
self.navigationItem.titleView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 150, 44)]; self.navigationItem.titleView.backgroundColor = [UIColor cyanColor]; [self.navigationItem.titleView release];
0 0
- [TwistedFate]导航视图控制器
- [TwistedFate]MVC视图控制器
- [TwistedFate]容器视图控制器 视图生命周期
- 导航视图控制器UINavigationController
- UINavigationController 导航视图控制器
- 导航视图控制器
- 导航视图控制器
- 导航视图控制器(总结)
- UI_导航视图控制器
- UI07_导航视图控制器
- UI_导航视图控制器
- UI导航视图控制器
- 导航视图控制器-------------学习笔记
- ABC定制视图导航控制器
- 导航视图控制器学习笔记
- iOS UI07_导航视图控制器
- Objective--C 导航视图控制器
- Objective--C 导航视图控制器
- bootstrap慕课网笔记 bootstrap入门
- iso8通知中心回复和按钮
- lua os.time()时区的坑……
- 支持度与置信度
- 已有预测分析表时的语法分析
- [TwistedFate]导航视图控制器
- View的setOnClickListener的添加方法
- servlet学习
- APP功能测试点
- 差分约束系统
- px、dp和sp,这些单位有什么区别?
- 简单邮件服务(Postfix+dovecot)
- hdu 1050 acmsteps moving tables
- iOS(三)实现App底部TabBar的切换:二