navigationBar—导航条,iOS7之后默认是透明的,iOS7之前默认是不透明的。
navigationBar在透明情况,与contentView会重合⼀部分区域。
navigationBar在不透明情况,contentView跟在navigationBar的下⾯。
navigationBar竖屏下默认⾼度44,横屏下默认⾼度32.
==============================
设置导航条的颜色
self.navigationController.navigationBar.barTintColor = [UIColor greenColor];
设置背景图片
1. 图片高度 < 44 , 效果:平铺
2. 图片高度 = 44 , 效果:只覆盖导航条
3. 图片高度 大于 44 小于64 ,效果:平铺
4. 图片高度 = 44 , 效果:覆盖导航条与状态栏
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@”32064”] forBarMetrics:(UIBarMetricsDefault)];
iOS 7.0后 导航条默认是半透明的
起始点从屏幕的左上角 开始计算
关闭半透明后 起始点从导航条下面开始计算
self.navigationController.navigationBar.translucent = NO;
一般咱们是使用 默认的半透明状态 不用考虑起始点的
==================================
导航条上的按钮 使用UIBarButtonItem
创建一个UIBarButtonItem按钮可以用字符串标识
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithTitle:@”左边的” style:(UIBarButtonItemStylePlain) target:self action:@selector(barButtonItemClick:)];
把创建的UIBarButtonItem按钮设置为左按钮
self.navigationItem.leftBarButtonItem = barButton;
释放
[barButton release];
==================================
创建一个UIBarButtonItem按钮可以用图片标识
UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@”right”] style:(UIBarButtonItemStylePlain) target:self action:@selector(rightButtonClick:)];
把创建的UIBarButtonItem按钮设置为右按钮
self.navigationItem.rightBarButtonItem = rightButton;
释放
[rightButton release];
创建一个UIBarButtonItem按钮可以系统提供的标识
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:(UIBarButtonSystemItemEdit) target:self action:@selector(barButtonItemClick:)];
把创建的UIBarButtonItem按钮设置为左按钮
self.navigationItem.leftBarButtonItem = barButton;
释放
[barButton release];
// 设置页面导航栏 标题
// self.navigationItem.title = @”首页”;
// 在标题位置 设置一个视图
UIView *titleView = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, 150, 44)];
titleView.backgroundColor = [UIColor greenColor];
self.navigationItem.titleView = titleView;
[titleView release];
}
实现右按钮 点击方法
-(void)rightButtonClick:(UIBarButtonItem *)barButton
{
NSLog(@”我是右按钮”);
}
实现左按钮 点击方法
- (void)barButtonItemClick:(UIBarButtonItem *)barButton
{
NSLog(@”我是左按钮”);
}
================================