导航栏push后再出现时出现空白黑色区域?
来源:互联网 发布:自己动手装修房子软件 编辑:程序博客网 时间:2024/05/16 14:51
UINavigationController使用时,导航栏隐藏时出现空白黑色区域?
即视图控制器A导航栏隐藏,视图控制器B导航栏显示,当 A push 到 B 时,再由 B pop 回到 A 时,会出现与导航栏等高的黑色区域。
首先需要明白的是,隐藏导航栏共有3种方法,使用方法3,且animated必须设置为YES,则可以避免出出空白黑色区域。
方法1
[self.navigationController.navigationBar setHidden:YES];
方法2
[self.navigationController setNavigationBarHidden:YES];
方法3
[self.navigationController setNavigationBarHidden:YES animated:YES];
除了解决黑色区域显示问题,还需要考虑到 A 显示时不会出现抖动的情况(即 A 视图显示时,先出现与状态栏等高的黑色区域,然后再向上移动),代码参考如下:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
// 1 B pop 回到 A 时,不会出现黑色区域,但可能会出现抖动情况 // [self.navigationController setNavigationBarHidden:YES animated:YES]; // 2 B pop 回到 A 时,会出现黑色区域,但不会出现抖动情况 // [self.navigationController setNavigationBarHidden:YES animated:NO]; // 3 B pop 回到 A 时,不会出现黑色区域,也不会出现抖动情况 [self.navigationController setNavigationBarHidden:YES animated:animated]; } - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; [self.navigationController setNavigationBarHidden:NO animated:YES]; }
0 0
- 导航栏push后再出现时出现空白黑色区域?
- UINavigationController使用时,导航栏隐藏时出现空白黑色区域?
- iOS -- push/pop 导航栏黑色阴影问题
- iOS -- push/pop 导航栏黑色阴影问题
- iphoneX,push进入一个webview, 页面底部出现一个黑色区域解决方案
- 合并Bitmap抠图出现黑色区域
- WKWebView隐藏导航栏后顶部出现空白
- ios 两句话解决,从无导航栏push到有导航栏界面,顶部闪现空白问题
- cordova上下拖动页面出现黑色区域问题
- iOS 删除导航栏黑色分割线
- 隐藏键盘时避免出现空白区域的BUG
- IOS8 使用UIRefreshControl 设置title时出现多余空白区域
- iOS 去掉顶部(或底部)出现一块空白区域
- iOS控制器在push或者pop时导航栏出现黑块的解决办法
- iOS控制器在push或者pop时导航栏出现黑块的解决办法
- 导航条在push时出现黑框
- 导航栏下的空白位置偏移
- IOS自定义导航栏Push动画效果
- Effective C++学习笔记(五)
- python获取网页上所有链接
- Spark运行流程源码走读
- 提升CSS文件的可维护性--采用BEM进行CSS类进行命名
- 鼠标悬停在td 上时,改变td的背景颜色。
- 导航栏push后再出现时出现空白黑色区域?
- java的反射机制浅谈
- 视图操作
- js的数组
- oracle invalid number
- 编程规范7
- leetCode练习(130)
- LeetCode 107. Binary Tree Level Order Traversal II
- OkHttp封装类