UINavigationController注意事项
来源:互联网 发布:知春大厦b座 户型图 编辑:程序博客网 时间:2024/06/05 23:05
一:需求是这样的,只在首页隐藏Navigation Bar,其他页面都不隐藏。
我在第一个视图控制器里写下了如下代码:
- (void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; self.navigationController.navigationBarHidden = YES;}- (void)viewWillDisappear:(BOOL)animated{ [super viewWillDisappear:animated]; self.navigationController.navigationBarHidden = NO;}
这样写导致的结果就是当你右滑返回一部分,再回来点击push到下一个页面,导航栏会混乱,本来该显示下一个页面的标题,结果变成了上一个页面的标题,如果你在这个页面进行其他的操作很可能导致崩溃,因为系统还以为是在上一个页面。
正确的写法应该是下面这样。
- (void)viewWillAppear:(BOOL)animated { [self.navigationController setNavigationBarHidden:YES animated:animated]; [super viewWillAppear:animated];}- (void)viewWillDisappear:(BOOL)animated { [self.navigationController setNavigationBarHidden:NO animated:animated]; [super viewWillDisappear:animated];}
二:self.navigationController.navigationBar.translucent = NO 把导航条这个属性设置为no之后,坐标变化
iOS7之后由于navigationBar.translucent默认是YES,坐标零点默认在(0,0)点 当不透明的时候,零点坐标在(0,64);如果你想设置成透明的,而且还要零点从(0,64)开始,那就添加:self.edgesForExtendedLayout = UIRectEdgeNone;
三:隐藏UINavigationBar下面的一条线
self.navigationController.navigationBar.shadowImage = [UIImage new];
注意,不能直接等于nil
阅读全文
0 0
- UINavigationController注意事项
- UINavigationController.navigationBar使用注意事项
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- UINavigationController
- 电磁干扰的主要来源
- Andorid Tv 开发 基础以及 应用安装上打不开,没图标以及遥控器选择的问题
- Java设计模式-抽象工厂模式
- 最小二乘法
- freemarker 中list循环 时间处理
- UINavigationController注意事项
- 二、关于Apache的版本
- 从零开始:微信小程序新手入门宝典(正在更新)
- log4net基础应用,实现项目日志文件开启!
- 【iOS】导航栏和工具栏
- git 命令
- JAVA如何把一个float四舍五入到小数点后2位,4位,或者其它指定位数.
- 理解嵌入式开发中的一些硬件相关的概念
- <java EE 项目:Musicstore>项目结构分析: 项目的3层结构之间的关系 :(表示层,业务层,数据层)