使用edgesForExtendedLayout遇到的麻烦
2015-10-02 16:15
295 查看
今天在写一个多界面之间来回返回的工程时,遇到的问题,建了两个类:FirstViewController 和 ButtonViewController。
由 FirstViewController 进入 ButtonViewController,我在 FirstViewController.m 和 ButtonViewController.m 中分别使用:
此时,以为这样可以好了,当打开模拟器,发现 ButtonViewController 界面中的contentView的部分被导航栏遮住了,所以在baidu.com之后参考http://blog.csdn.net/cny901111/article/details/26529949使用了如下代码:
但是问题又来了,在模拟器上运行的时候,发现进入 ButtonViewController 时导航栏位置出现了"卡顿"现象,解决代码如下:
即可。当没有设置 translucent(默认的是YES) 的时候,导航栏默认的是半透明颜色,所以需要如上设置就好。
由 FirstViewController 进入 ButtonViewController,我在 FirstViewController.m 和 ButtonViewController.m 中分别使用:
self.navigationController.navigationBarHidden = YES; // 隐藏导航栏 FirstViewController.m 中 self.navigationController.navigationBarHidden = NO; // 恢复该页面导航栏 ButtonViewController.m 中
此时,以为这样可以好了,当打开模拟器,发现 ButtonViewController 界面中的contentView的部分被导航栏遮住了,所以在baidu.com之后参考http://blog.csdn.net/cny901111/article/details/26529949使用了如下代码:
self.edgesForExtendedLayout = UIRectEdgeNone;
但是问题又来了,在模拟器上运行的时候,发现进入 ButtonViewController 时导航栏位置出现了"卡顿"现象,解决代码如下:
// 将 self.edgesForExtendedLayout = UIRectEdgeNone; // 改为: self.navigationController.navigationBar.translucent = NO; self.tabBarController.tabBar.translucent = NO;
即可。当没有设置 translucent(默认的是YES) 的时候,导航栏默认的是半透明颜色,所以需要如上设置就好。
相关文章推荐
- Oracle学习第二天---Profile的使用
- Hibernate配置文件hbm主键的generator可选项
- 二、制作第一个安卓应用
- linux文件处理命令——目录处理命令
- Spiral Matrix
- 通信原理实践(一)——音频信号处理
- C# 获取操作系统相关信息
- Nginx Event模块
- UGUI学习笔记4——UI Events,Event Triggers
- 关于Maven的一些见解
- C#反射技术的简单操作
- 创建数据表
- codeforces 466E Information Graph 并查集LCA离线一通乱搞
- Trapping Rain Water
- 0.IDA-基本操作
- C++中堆、栈数据区别
- iOS 多线程的使用(GCD)
- CocoaPods安装
- JAVA SHH框架搭建(多图)
- 黑马程序员-----Foundation框架学习之NSString续