UINavigationBar 导航状态栏


- (void)viewDidLoad {

    [super viewDidLoad];

    self.view.backgroundColor = [UIColor redColor];

    //1.获取导航控制器的导航栏,在导航控制器中,所有的视图控制器共用一个导航栏

    UINavigationBar *navigationBar = self.navigationController.navigationBar;

    //2.设置导航栏的风格

    //UIBarStyleDefault   ----默认白色的

    //UIBarStyleBlack     ----黑色的

    navigationBar.barStyle = UIBarStyleDefault;

    //3.设置导航栏的透明度,默认为YES

    //如果导航栏透明,则视图控制器上的子视图的坐标原点按导航控制器的view的左上角的点

    //如果导航栏不透明,则视图控制器上的子视图的坐标原点按导航栏的左下角的点来算

    navigationBar.translucent = YES;

    NSLog(@"%@",NSStringFromCGRect(self.view.bounds));

    //导航栏高度为44像素,上部状态栏高度为20,所以导航栏上部总共为64像素

    NSLog(@"%@",NSStringFromCGRect(navigationBar.bounds));

    //修改导航栏元素项的颜色

    navigationBar.tintColor = [UIColor yellowColor];

    //修改导航栏的背景颜色

    navigationBar.barTintColor = [UIColor cyanColor];

    //设置导航栏的背景图片 (竖屏)

    //forBarMetrics:手机屏幕状态

    [navigationBar setBackgroundImage:[UIImage imageNamed:@"navBarLand"] forBarMetrics:UIBarMetricsDefault];

    [navigationBar setBackgroundImage:[UIImage imageNamed:@"navigationbar"] forBarMetrics:UIBarMetricsCompact];

    [self createBtn];

}



//***********************************设置导航状态栏元素项*************************************

//设置视图控制器的标题方式1

    self.title = @"视图一";

    //设置视图控制器的标题方式2:导航元素项

    //navigationItem属于视图控制器,即每个视图控制器都有自己的导航元素项,导航栏是所有视图控制器共享的

    self.navigationItem.title = @"视图一";

    //设置视图控制器的标题方式3:图片方式设置

    //并且图片方式的优先级最高,方式一和方式二优先级一样

    UIView *view = [[UIView alloc]init];

    view.frame = CGRectMake(003030);

    view.backgroundColor = [UIColor yellowColor];

    self.navigationItem.titleView = view;

    

    //下一个视图控制器的返回按钮是由上一个视图控制器来创建的

    //返回按钮如果没有创建,系统会自动创建,并且将当前控制器的标题设为返回按钮的标题

    //这个返回按钮是给下一级视图控制器使用

    //如果返回按钮的文字太长了,不能完全显示,则自动替换为Back

    self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"返回" style:UIBarButtonItemStylePlain target:nil action:nil];

    

    //设置导航元素项的左元素项(做元素想显示在当前视图控制器)

    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"帮助" style:UIBarButtonItemStylePlain target:nil action:nil];

    

    //方式1:创建文字常规导航元素项按钮

    UIBarButtonItem *rightItem = [[UIBarButtonItem alloc]initWithTitle:@"编辑" style:UIBarButtonItemStyleDone target:self action:@selector(rightClick)];

    //设置导航元素项为有元素项

    self.navigationItem.rightBarButtonItem = rightItem;

    

    //方式2:创建系统样式的按钮

    UIBarButtonItem *rightItem2 = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:self action:nil];

    self.navigationItem.rightBarButtonItem = rightItem2;

    

    //方式3:创建自定义样式按钮

    UIView *view2 = [[UIView alloc]init];

    view2.frame = CGRectMake(003030);

    view2.backgroundColor =[UIColor redColor];

    UIBarButtonItem *rightItem3 = [[UIBarButtonItem alloc]initWithCustomView:view2];

    self.navigationItem.rightBarButtonItem = rightItem3;

    

    //方式4:创建图片样式按钮

    UIImage *image = [UIImage imageNamed:@"user_total"];

    //强制设置图像为原始的描画方式显示

    UIImage *image1 = [image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

    UIBarButtonItem *rightItem4 = [[UIBarButtonItem alloc]initWithImage:image1 style:UIBarButtonItemStyleDone target:nil action:nil];

    self.navigationItem.rightBarButtonItem = rightItem4;

    

    //设置左元素项数组,并且会覆盖掉原有元素项

    self.navigationItem.leftBarButtonItems = @[rightItem2,rightItem3,rightItem4];

    

    //设置有元素项数组,并且会覆盖原有元素项

    self.navigationItem.rightBarButtonItems = @[rightItem2,rightItem3,rightItem4];

    

    [self createBtn];

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值