UINavigationBar 总结
一、某个 ViewController 出现隐藏 NavigationBar
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:NO];
}
- (void)viewDidDisappear:(BOOL)animated {
[super viewDidDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:NO];
}
二、调整 NavigationBar 高度
1、介绍
1) 默认是 44 个像素点。
2、使用
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view. self.title = @"AAAAA"; UIBarButtonItem* leftBarButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"Action_Moments.png"]
style:UIBarButtonItemStyleBordered target:self
action:@selector(onclickBackBarButton)];
self.navigationItem.leftBarButtonItem = leftBarButton;
} - (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated]; CGRect rect = self.navigationController.navigationBar.frame;
rect.size.height = 100.0f;
self.navigationController.navigationBar.frame = rect; [self.navigationController.navigationBar setTitleVerticalPositionAdjustment:-40.0f forBarMetrics:UIBarMetricsDefault]; // [self.navigationItem.backBarButtonItem setBackgroundVerticalPositionAdjustment:-40.0f forBarMetrics:UIBarMetricsDefault]; // 对系统自带的 backBarButton 不起作用 [self.navigationItem.leftBarButtonItem setBackgroundVerticalPositionAdjustment:-40.0f forBarMetrics:UIBarMetricsDefault];
} - (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated]; CGRect rect = self.navigationController.navigationBar.frame;
rect.size.height = 44.0f;
self.navigationController.navigationBar.frame = rect;
}

注意:
1) 如果使用系统默认的 backBarButton 是不能调整高度的。
2) 只有自定的 barButtonItem,而且使用以下初始化,才可以调整其高度。
- (id)initWithImage:(UIImage *)image style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action
UINavigationBar 总结的更多相关文章
- iOS阶段学习第31天笔记(UINavigationBar介绍)
iOS学习(UI)知识点整理 一.UINavigationBar 的介绍 1)概念:UINavigationBar 是用于定义导航栏按钮的一个类对象 2)在使用UINavigationBar之前必须先 ...
- UINavigationItem UINavigationBar 关系分析
目录 1.关系分析 2.关系综述 3.概念点 4.疑问 1.关系分析 UIBarItem-> UIBarButtonItem -> UINavigationItem 1.1 UIBarIt ...
- UINavigationItem UINavigationBar 关系分析[转]
http://blog.csdn.net/luoyeffcs/article/details/16106707 目录 1.关系分析 2.关系综述 3.概念点 4.疑问 1.关系分析 UIBarItem ...
- iOS开发备忘录:自定义UINavigationBar背景图片和Back按钮
iOS项目,根据设计图,有时需要自定义UIView的UINavigationBar的背景.可以切出来一张1像素左右的背景图片,来充当UINavigationBar的背景. 可以利用Navigation ...
- UITabBar,UINavigationBar的布局和隐藏问题
---恢复内容开始--- 1. 前言 UITabBar,UINavigationBar非常的好用,但是毕竟是系统自带的,不受自己完全掌握,对于布局和隐藏会有一些问题,现在就来谈谈我的想法和一些问题. ...
- UINavigationBar 和 UINavigationItem的属性设置
#import "RootViewController.h" @interface RootViewController () @end @implementation RootV ...
- IOS 入门开发之创建标题栏UINavigationBar的使用(二)
IOS 入门开发之创建标题栏UINavigationBar的使用 http://xys289187120.blog.51cto.com/3361352/685746 IOS 开发有关界面的东西 ...
- iOS7中如何去除UINavigationbar下边的那条黑线
做项目过程中遇到要去掉导航栏下面的一条黑线,从网上找到的一个方法 默认UINavigationbar样式 准备用于替换的背景 替换后的效果 if ([self.navigationController ...
- ios7 自定义UINavigationBar UIBarButtonItem 10px的偏移纠正
为UINavigationBar 写一个分类.UINavigationItem+correct_offset.h 转载 http://www.colabug.com/thread-1112420-1 ...
- iOS 开发 中级:UIToolbar,UINavigationBar,UITabBar,UIBarButtonItem,UITabBarItem自定义方法总结
原文: http://blog.csdn.net/songrotek/article/details/8692866?utm_source=tuicool 对于UIToolbar,UINavigat ...
随机推荐
- Git pull 强制覆盖本地文件
git fetch --all git reset --hard origin/master git pull
- [转]linux(centos)搭建SVN服务器
转自:http://blog.163.com/longsu2010@yeah/blog/static/173612348201202114212933/ 安装步骤如下: 1.yum install ...
- flex设置成1和auto有什么区别
首先明确一点是, flex 是 flex-grow.flex-shrink.flex-basis的缩写.故其取值可以考虑以下情况: flex 的默认值是以上三个属性值的组合.假设以上三个属性同样取默认 ...
- Nginx设置Js、Css等静态文件的缓存过期时间
location ~.*\.(js|css|html|png|jpg)$ { expires 3d; } expires 3d; //表示缓存3天 expires 3h; //表示缓存3小 ...
- jquery delay()介绍及使用指南
.delay()是用来在jQuery动画效果和类似队列中是最好的.但是,由于其本身的限制,比如无法取消延时——.delay(),它不是JavaScript的原生 setTimeout函数的替代品,这可 ...
- 移动端touch模块
在自己写touch事件时,总是会出现各种各样的bug,正好发现zepto的touch模块,很好用,而且由于zepto和jquery语法的相似性,这个模块也可以直接引用到jquery中, 得花时间好好消 ...
- 【JAVA】 @override报错的解决方法
有时候Java的Eclipse工程换一台电脑后编译总是@override报错,把@override去掉就好了,但不能从根本上解决问题,因为有时候有@override的地方超级多. 原因:这是jdk的问 ...
- Let It Be - The Beatles - Lyrics
轉載自 https://www.youtube.com/watch?v=0714IbwC3HA When I find myself in times of trouble, Mother Mary ...
- windows一些快捷键
1.Win + __ 1)Win + L 锁屏 2)Win + E 资源管理器(就是打开硬盘) 3)Win + D 回到桌面 4)Win + Tab 3D方式切换程序窗口 5)Win + R 运行命令 ...
- 李洪强经典面试题136-KVO-KVC
李洪强经典面试题136-KVO-KVC KVC-KVO KVC的底层实现? 当一个对象调用setValue方法时,方法内部会做以下操作: ①检查是否存在相应key的set方法,如果存在,就调用se ...