导航栏颜色的更改

简介: 导航栏颜色的更改


1.效果图


image.png


代码:上面导航栏设置为了无色:透明


  • 在两个方法里面写四句代码(思想:给导航栏设置一张对应尺寸的全透明图片即可。 )
-(void)viewWillAppear:(BOOL)animated
{
     [super viewWillAppear:animated];
     //设置导航栏背景图片为一个空的image,这样就透明了
     [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc]init] forBarMetrics:UIBarMetricsDefault];
     //去掉透明后导航栏下边的黑边
    [self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]];
}
-(void)viewWillDisappear:(BOOL)animated
{
   [super viewWillDisappear:(BOOL)animated];
   //如果不想让其他页面的导航栏变为透明
   [self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
   [self.navigationController.navigationBar setShadowImage:nil];
}


  • 2.改变导航栏的颜色(把下面的代码下载你要改变的控制器里面)
image.png
//视图将要显示之前(这个颜色是导航栏的新的颜色)
  -(void)viewWillAppear:(BOOL)animated
  {
      [super viewWillAppear:animated];
      self.navigationController.navigationBar.barTintColor = [UIColor greenColor];
  }
  //视图已经消失(这个颜色是导航栏的原来的的颜色)
  -(void)viewWillDisappear:(BOOL)animated
  {
      [super viewWillDisappear:(BOOL)animated];
      self.navigationController.navigationBar.barTintColor = [UIColor brownColor];
  }

代码:改变颜色


  • 3.怎么改变导航栏上标题的颜色和大小(2个方法)
  • <1>:(自定义视图的方法)
    就是在导航向上添加一个titleView,可以使用一个label,再设置label的背景颜色透明,字体什么的设置就很简单了。


//自定义标题视图
UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 200, 44)];
titleLabel.backgroundColor = [UIColor grayColor];
titleLabel.font = [UIFont boldSystemFontOfSize:20];
titleLabel.textColor = [UIColor greenColor];
titleLabel.textAlignment = NSTextAlignmentCenter;
titleLabel.text = @"新闻";
self.navigationItem.titleView = titleLabel;
  • <2>:(在默认显示的标题中直接修改文件的大小和颜色也是可以的)


[self.navigationController.navigationBar setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:19],NSForegroundColorAttributeName:[UIColor redColor]}];


方式二相对于方式一而言更加简单方便


目录
相关文章
如何设置控制台由底部展示改为右侧位置
这篇文章介绍了如何在Sublime Text编辑器中将控制台从底部展示改为右侧位置,通过使用Package Control来安装相关的插件来实现界面布局的调整。
|
小程序
小程序右上角的胶囊颜色怎么修改?
小程序右上角的胶囊颜色怎么修改?
186 0
|
7月前
ios15从隐藏系统导航栏页面进入显示系统导航栏页面后,期望系统导航栏背景色为白色,但是导航栏背景变成黑色问题
ios15从隐藏系统导航栏页面进入显示系统导航栏页面后,期望系统导航栏背景色为白色,但是导航栏背景变成黑色问题
60 0
|
7月前
LabVIEW更改Tab所选标签的颜色
LabVIEW更改Tab所选标签的颜色
59 0
|
搜索推荐
右侧边锚点导航栏
右侧边锚点导航栏
236 0
|
小程序 JavaScript
小程序顶部导航栏,可滑动,可动态选中放大
小程序顶部导航栏,可滑动,可动态选中放大
202 0
vs code修改左侧栏字体大小
vs code修改左侧栏字体大小
604 0
vs code修改左侧栏字体大小
通过HTML+CSS+JavaScript实现鼠标移动到页面顶部导航栏出现,如果移出导航栏3秒又隐藏起来,而且不受滚动条影响(二)...
通过HTML+CSS+JavaScript实现鼠标移动到页面顶部导航栏出现,如果移出导航栏3秒又隐藏起来,而且不受滚动条影响(二)...
|
JavaScript
使用 jQuery 实现页面背景色的更换,通过下拉框选择对应的颜色,页面背景会随着选中的颜色进行更换
使用 jQuery 实现页面背景色的更换,通过下拉框选择对应的颜色,页面背景会随着选中的颜色进行更换
309 0
使用 jQuery 实现页面背景色的更换,通过下拉框选择对应的颜色,页面背景会随着选中的颜色进行更换
|
前端开发
HTMLCSS实现左侧固定宽度右侧内容可滚动
在做移动端页面的时候,经常会碰到一个div中分左右两个div,左侧div固定宽度或百分比,右侧div中内容左右溢出,需要左右滑动才可以浏览到全部内容,为此写了一个demo。 处理这个问题的核心关键点是右侧div需要设置固定宽度或者百分比,然后设置它的overflow为auto或者scroll。
3292 1