两种iOS隐藏导航栏的正确方法
发布时间 - 2026-01-11 00:24:31 点击率:次简介

在项目中经常碰到首页顶部是无限轮播,需要靠最上面显示.有的设置导航栏为透明等一系列的方法,这个可以借助第三方.或者干脆简单粗暴的直接隐藏掉导航栏.可是push到下一个页面的时候是需要导航栏的,如何做了,这里给出两种方法.
第一种做法
-注意这里一定要用动画的方式隐藏导航栏,这样在使用滑动返回手势的时候效果最好,和上面动图一致.这样做有一个缺点就是在切换tabBar的时候有一个导航栏向上消失的动画.
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:YES];
}
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:YES];
}
第二种做法
设置self为导航控制器的代理,实现代理方法,在将要显示控制器中设置导航栏隐藏和显示,使用这种方式不仅完美切合滑动返回手势,同时也解决了切换tabBar的时候,导航栏动态隐藏的问题.
@interface WLHomePageController () <UINavigationControllerDelegate>
@end
@implementation WLHomePageController
#pragma mark - lifeCycle
- (void)viewDidLoad {
[super viewDidLoad];
// 设置导航控制器的代理为self
self.navigationController.delegate = self;
}
#pragma mark - UINavigationControllerDelegate
// 将要显示控制器
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
// 判断要显示的控制器是否是自己
BOOL isShowHomePage = [viewController isKindOfClass:[self class]];
[self.navigationController setNavigationBarHidden:isShowHomePage animated:YES];
}
Demo:坐飞机
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# iOS导航栏
# iOS隐藏导航栏
# iOS隐藏导航
# iOS 封装导航栏及返回
# 获取控件所在控制器的实例
# 详解iOS11关于导航栏问题
# iOS App开发中导航栏的创建及基本属性设置教程
# iOS实现导航栏透明示例代码
# iOS轻松实现导航栏透明渐变
# 简单好用的iOS导航栏封装.runtime属性控制实例代码
# 有一个
# 两种
# 这样做
# 要用
# 第三方
# 首页
# 第二种
# 第一种
# 大家多多
# 如何做
# 图一
# 器中
# 解决了
# 就是在
# 等一系列
# tabBar
# pre
# cpp
# class
# brush
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
JS经典正则表达式笔试题汇总
Swift中swift中的switch 语句
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
香港服务器网站推广:SEO优化与外贸独立站搭建策略
利用JavaScript实现拖拽改变元素大小
如何用PHP快速搭建CMS系统?
如何用JavaScript实现文本编辑器_光标和选区怎么处理
javascript基于原型链的继承及call和apply函数用法分析
Laravel如何记录自定义日志?(Log频道配置)
百度输入法ai组件怎么删除 百度输入法ai组件移除工具
微信小程序 input输入框控件详解及实例(多种示例)
html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
java ZXing生成二维码及条码实例分享
android nfc常用标签读取总结
如何用AI帮你把自己的生活经历写成一个有趣的故事?
javascript中的try catch异常捕获机制用法分析
轻松掌握MySQL函数中的last_insert_id()
Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程
免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?
历史网站制作软件,华为如何找回被删除的网站?
Android自定义控件实现温度旋转按钮效果
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
如何用好域名打造高点击率的自主建站?
Laravel Docker环境搭建教程_Laravel Sail使用指南
,怎么在广州志愿者网站注册?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何打造高效商业网站?建站目的决定转化率
常州企业网站制作公司,全国继续教育网怎么登录?
焦点电影公司作品,电影焦点结局是什么?
Laravel如何编写单元测试和功能测试?(PHPUnit示例)
如何用PHP工具快速搭建高效网站?
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
大同网页,大同瑞慈医院官网?
Android中AutoCompleteTextView自动提示
javascript日期怎么处理_如何格式化输出
如何用狗爹虚拟主机快速搭建网站?
php静态变量怎么调试_php静态变量作用域调试技巧【解答】
Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】
教你用AI润色文章,让你的文字表达更专业
如何在Windows服务器上快速搭建网站?
Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案
Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置
Laravel观察者模式如何使用_Laravel Model Observer配置
标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南
java获取注册ip实例
Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】
再谈Python中的字符串与字符编码(推荐)

