首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

navigationBar标题变为默认黑色,而不是我在viewWillAppear中设置的颜色

可能是由于以下原因:

  1. 导航栏样式设置问题:在viewWillAppear中设置导航栏标题颜色时,可能未正确设置导航栏的样式。确保在设置标题颜色之前,正确设置导航栏的样式为自定义样式。
  2. 导航栏样式被其他代码修改:在viewWillAppear之后的代码中,可能存在修改导航栏样式的代码,导致标题颜色被重置为默认黑色。检查其他可能修改导航栏样式的代码,并确保没有覆盖你在viewWillAppear中设置的颜色。
  3. 导航栏样式被系统默认值覆盖:某些情况下,系统可能会自动将导航栏样式重置为默认值,包括标题颜色。可以尝试在viewDidAppear中重新设置导航栏标题颜色,以确保在视图显示后再次设置颜色。
  4. 导航栏样式被其他视图控制器修改:如果当前视图控制器是导航栏的子视图控制器,其他视图控制器可能会在切换时修改导航栏样式,导致标题颜色变为默认黑色。可以在其他视图控制器的viewWillDisappear中设置导航栏样式为自定义样式,以避免影响当前视图控制器的导航栏样式。

总结:要解决navigationBar标题变为默认黑色的问题,需要确保正确设置导航栏的样式,并检查其他可能修改导航栏样式的代码。如果问题仍然存在,可以尝试在viewDidAppear中重新设置导航栏标题颜色,或者检查其他视图控制器是否影响了导航栏样式。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

iOS系统中导航栏的转场解决方案与最佳实践

导航栏组件的改变与革新 导航栏组件在 iOS 11 发布时,获得了重大更新,这个更新可不是增加了一个大标题样式(Large Title Display Mode)那么简单,需要注意的地方大概有两点: 导航栏全面支持...的 ViewController 会从默认的绿色变为紫色,直到有新的 ViewController 修改导航栏颜色才会发生变化。...这个纯色图片的颜色取决于 barStyle 属性,当属性为 UIBarStyleBlack 时为黑色,当属性为 UIBarStyleDefault 时为白色,如果我们设置了 barTintColor,则以设置的颜色为基准...在 Web 端里,opacity 是设定整个元素的透明值,而 alpha 一般是放在颜色设置里面,所以我们可以做到对特定对元素的某个属性设定 alpha,比如背景、边框、文字等。...在 viewWillAppear: 中,统一设置导航栏的隐藏状态。

2.4K30
  • iOS开发UINavigation系列一——导航栏UINavigtionBar

    ,实际上,我们也可以在不使用导航控制器的前提下,单独使用导航栏,在UINavigationBar中,也有许多我们可以定制的属性,用起来十分方便。...            = 1,//黑色 } 默认的风格就是我们上面看到的白色的风格,黑色的风格效果瑞如下: ?...(nonatomic,assign,getter=isTranslucent) BOOL translucent; 下面一些方法用于设置NavigationBar及上面item的颜色相关属性: @property...(null_resettable, nonatomic,strong) UIColor *tintColor; tintColor这个属性会影响到导航栏上左侧pop按钮的图案颜色和字体颜色,系统默认是如下颜色...的push与pop操作         UINavigationBar上面不只是简单的显示标题,它也将标题进行了堆栈的管理,每一个标题抽象为的对象在iOS系统中是UINavigationItem对象,我们可以通过

    1.2K31

    iOS导航栏使用总结

    ; 1.全局设置 全局设置一般的都是在AppDelegate中设置,这样整个app都会生效,相关的代码与效果图如下: //1.设置导航栏背景颜色 [[UINavigationBar appearance...比如我们进入一个页面,需要设置当前导航栏的背景色为灰色,使用如下方法: //进入页面时设置颜色:灰色 - (void)viewWillAppear:(BOOL)animated{ [super...导航栏视图层级图 从图中可以看出,导航栏的底部分割线是一个UIImageView对象,而且高度只有0.5,所以我们可以据此获取到导航栏的底部分割线对象,在一个视图控制器中实现此需求,代码如下: #import...,用于优化滑动类视图(继承于UIScrollView的视图)在视图控制里的显示: iOS系统的导航栏UINavigationBar与标签栏UITabBar默认都是半透明模糊效果,在这种情况下系统会对视图控制器的...,那么视图控制器里的控件就会默认从(0,64)开始布局了,设置导航栏不透明的方法如下: self.navigationController.navigationBar.translucent= NO;

    3.2K20

    iOS状态栏使用总结

    ((44) iPhoneX设备出现以后,状态栏的高度变为44,导航栏部分总高度(88) = 状态栏(44) + 导航栏内容高度(44) 二、设置状态栏显隐与字体样式 iOS状态栏可以设置显示和隐藏,也可以设置文字的颜色...] setStatusBarStyle:UIStatusBarStyleDefault]; 注意:使用代码控制全局的状态栏,代码的位置很重要;在AppDelegate中写入可以设置整个App页面的状态栏样式...2.分页设置 在info.plist中设置View controller-based status bar appearance属性为YES,状态栏默认显示且字体黑色。...//状态栏和导航栏背景色为白色,状态栏文字为黑色 self.navigationController.navigationBar.barStyle = UIBarStyleDefault; //状态栏和导航栏背景色为黑色...,所以默认情况下,状态栏都是跟随导航栏背景色的变化而变化。

    1.9K30

    NavigationBar&tabBar调色那些事儿1. 导航栏调色那些事儿2. 标签栏TableBar那些事儿

    导航栏调色那些事儿 小规律: 要设置内容,全找item 要修改颜色及文字属性,找bar 1.1 改变 NavigationBar 的背景颜色 [UINavigationBar appearance].barTintColor...blueColor]; 1.2 改变 NavigationBar 的字体颜色 NavigationBar 上面有两处可以改变字体颜色,一是标题,二是左右按钮的文字。...下方的阴影 iOS 7 NavigationBar的下方默认是有一条阴影的,如果想要 NavigationBar 和下面内容的背景颜色融为一体的话,就要去掉这个阴影。...- 这里需要注意的是,如果图片传入的是nil,依然还会添加默认的阴影线。 系统判断是否出现阴影线的标准是:是否传入照片。所以我们用[UIImage new]创建了一个空照片(不是nil)。...,需要隐藏整个 StatusBar,方法如下: 状态栏的高度是20 方法一: 和改变 StatusBar 颜色一样,在 Info.plist 中的 Information Property List 中添加一个

    1.5K50

    UINavigationBar的用法

    UINavigationBar是一个我们在开发中必定会碰到的控件,用好它能帮助我们自定义导航栏的样式,所以今天讲解一下UINavigationBar的用法。...设置导航栏的标题 这个直接是很简单的设置,一行代码搞定 self.navigationItem.title = @"导航栏标题"; 设置导航栏背景颜色 导航栏的背景颜色,也是很简单的 自己替换代码中的颜色即可...,黑色颜色,用于亮色背景,一个是白色用于深色背景 设置返回按钮 有时候我们会发现,我们设置的返回按钮都是蓝色的默认颜色,那么到底该怎么更改这些按钮的颜色呢 设置返回按钮的颜色,只设置tintColor的颜色就好了...tintColor的颜色(默认为蓝色)。...首先,我做了个UIImage的分类:通过颜色转成UIImage; 然后,用上面的方案来设置导航栏底部线条。

    2K20

    iOS15适配

    想必都看过WWDC2021的Session了,Session原版视频依然是最有效的get新特性的渠道,iOS15多的特性就不说了,我就整理了我在适配iOS15路上的一些更改和调整。...,字体颜色也没有生效,呈现黑色,查看导航栏特性API:UINavigationBarAppearance后发现,iOS15navigationBar的相关属性设置要通过实例UINavigationBarAppearance...UITabbar tabbar的问题和navigationBar的问题属于同一类,tabbar背景颜色设置失效,字体设置失效,阴影设置失效问题 旧代码 ...... self.tabBar.backgroundImage...首先是背景色设置失效,让我就想到了navigationbar的问题,所以没有查api了 直接用UITabBarAppearance来设置, 新代码 ...... if #available(iOS 15...UITableView iOS15对于tableview,新增了sectionHeaderTopPadding作为列表每个部分标题上方的填充,它的默认值是UITableViewAutomaticDimension

    2.3K30

    iOS状态栏设置

    bar appearance的值的不同有相应的设置 如果不添加UIViewControllerBasedStatusBarAppearance配置,那么默认值为YES UIViewControllerBasedStatusBarAppearance...的配置,ViewController的配置不生效 也可以在Info.plist添加默认的状态栏样式 Status bar style设置为UIStatusBarStyleLightContent或UIStatusBarStyleDefault...中,那么直接在ViewController设置是不生效的,只能在NavigationController中设置 所以如果你用的Storyboard中配置的NavigationController话,就必须为...statusBar的颜色 在navigationBar上addSubView该UIView即可 UINavigationBar设置 上面说了状态栏 这里顺便把UINavigationBar也说了 我的配置...下的黑线,会导致状态栏颜色与navigationBar的背景色不同,暂没找到好的解决方法 6) 设置navigationBar背景透明的方式 跟去黑线的方式相同

    2.8K11

    iOS透明导航栏的平滑过渡(进阶版)引实现过程结

    而很多App的做法其实比较粗糙,类似于我在传送门:iOS导航栏切换界面时隐藏和显示中的做法,需要导航栏透明时,直接将导航栏隐藏起来。...直接隐藏起来的意思是,整个导航栏就用不了了,也就是说,标题、返回按钮等都需要自己去做,这是一个比较麻烦的地方,此外,在有无导航栏的界面间切换时,过程是比较生硬的,导航栏不是渐变出现的。...设置导航栏背景透明度 导航栏上应该是有很多view的,我们要做的是只让背景透明,而保留标题、返回按钮。iOS没有直接给我们提供对于导航栏背景view的访问途径,那么我们只能自己来找了。...有它在岂不是前功尽弃了,再用上面的方法已经不管用了,这条线不在我们找出来的子view之中,通过查资料,要隐藏这跟细线的方法很多,但是要跟我们对导航栏背景的设置不冲突,又要能到只在将导航栏背景设为透明时才隐藏...这样每个 ViewController 都可以管理自己的导航栏透明度,在这个新增属性的setter方法中,我们调用前面在在 UINavigationController 的Category 中添加的设置导航栏透明度的方法

    3.1K40

    iOS14开发-UIViewController

    验证:通过纯代码跳转时发现屏幕黑色且卡顿,设置颜色后正常。 loadView方法 用于创建 UIViewController 的 view。...接收值的 UIViewController 实现需要传值的 UIViewController 中的闭包属性,在闭包的实现中拿到传过来的值进行使用。...navigationBar.prefersLargeTitles = true // 当前界面是否显示大标题,never表示不显示大标题即显示小标题 navigationItem.largeTitleDisplayMode...注意:默认情况下返回按钮和左侧按钮是不同时显示的,只显示返回按钮而不显示左侧按钮。...颜色问题 UITabBar的颜色 可以通过 UITabBar 的barTintColor设置。 渲染颜色 图片一般由设计师统一设计,需要设置标题文字颜色以适应图片。

    2.4K20

    Cocoa编程中视图控制器与视图类详解

    其它三个都是通过对应的控制器类来完成工作,而不是直接构建和管理视图。 ...设置导航栏的按钮并不是去设置导航栏本身。一切都是在被推入的UIViewController子类内部执行推入请求和相关导航栏的定制(如:右键按钮)。...导航栏可以通过直接访问navigationBar属性,改变栏的风格或者它的颜色: C代码   self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent...注意:对于导航栏定制,对定制实际标题的最简单方式时使用子视图控制器而不是导航项的title属性: C代码   self.title = @"Hello";   self.title = [[[NSBundle...在实现UITabBarControllerDelegate委托的视图控制器中重写init方法来自定义UITabBarItem条目。

    5.1K50

    【iOS开发-22】navigationBar导航栏,navigationItem建立:获取导航栏中的基本文本和button以及各种跳跃

    大家好,又见面了,我是全栈君 (1)navigationBar导航栏可以被看作是self.navigationController一个属性导航控制器,它可以由点直接表示self.navigationController.navigationBar...当然可用的有设置导航条标题的方法setTitle,当然你也能够直接把文字换成一个视图。...(4)最重要的可能是给navigationItem设置左右两边的button,一般默认的在左边有“返回”。在右边的有“摄像头”(如微信朋友圈)。...//默认的时白色半透明(有点灰的感觉),UIBarStyleBlack,UIBarStyleBlackTranslucent,UIBarStyleBlackOpaque都是黑色半透明。...; //设置导航条背景颜色,也是半透明玻璃状的颜色效果 self.navigationController.navigationBar.backgroundColor=[UIColor

    2.4K10

    # iOS导航栏控制Tips

    setNavigationBarHidden:NO animated:YES]; } B页面: // 在页面将要出现时,记录原始侧滑手势代理对象,并将手势代理设置为当前页面 - (void)viewWillAppear...2.重写导航控制器的Push方法,在push之前,设置navigationItem.backBarButtonItem。...在原始堆栈数组中判断是否存在该类型的控制器,如果存在记录其索引。 在复制的数组中将索引及上方所有控制器移除。 把将要push出来的控制器添加到复制的数组中。...将新的控制器数组设置为导航控制器的栈数组,根据参数判断是否要显示动画。 我这边做了一些发散,因为一些类可能会有很多子类,那么想要保证父类以及子类的实例都只有一个,所以将方法做了改进。...viewController) { return; } // 如果要push的界面不是 parentClass以及其子类的实例,则按照方法1处理 if (!

    1.7K31

    android 设置标题栏背景颜色_状态栏菜单栏都在哪

    不使用fiySystemWindow属性,布局怎么能不遮挡状态栏文字 跟第三章节类似,在主页中,需要使布局中带文字的布局向上margin状态栏的高度。...而对于第一个首页和第四个我的fragment,则需要布局的图片填充到状态栏底下,而标题栏要位于状态栏下方,这其实只需要一种取巧实现,一般手机状态栏高度都是在25dp左右,当然在代码中动态获取状态栏高度,...我这里是简单实现,让标题栏marginTop状态栏高度即可,对于android不同版本,可以如下设置。...感兴趣的小伙伴可以参下:android沉浸式状态栏、fitsSystemWindows、标题栏折叠 下面我们说说怎么在界面滑动时,修改状态栏和标题栏文字颜色。...这个主要通过监听AppBarLayout滑动的距离,向上滑动,如果大于标题栏的高度,则要动态改变标题栏文字颜色,当标题栏折叠时,改变状态栏文字颜色及返回铵钮图标,同时状态栏文字颜色变成暗色。

    2.3K10

    【iOS】基于Realm数据库的记账软件--钱包记账模块(四)终

    这里的实现方式其实是隐藏了导航栏的背景,并且添加了一块高为64的View覆盖在原来的导航栏上。关于导航栏的隐藏,可以看一下这一篇博客。 结构图: ?...这里写图片描述 因此我们只需要在ViewWillAppear,以及ViewWillDisappear对导航栏做设置,代码如下 - (void)viewWillAppear:(BOOL)animated...{ [super viewWillAppear:animated]; self.navigationController.navigationBar.tintColor = [UIColor whiteColor...]; // 设置导航栏背景为透明 [self.navigationController.navigationBar setBackgroundImage:[UIImage new]forBarMetrics...我使用这个框架,绘制了饼状图和折线图,分别对应以下两个类: // 饼状图 PieChartView // 折线图 LineChartView 讲真,这个框架学习成本还是挺高的。

    81220

    iOS导航栏基础效果配置

    大家好,又见面了,我是你们的朋友全栈君。...标题设置 self.navigationItem.title = @"标题"; 复制代码 正常情况下,控制器的标题会默认作为导航标题 前景色 self.navigationController.navigationBar.barTintColor...设置返回按钮 //只设置颜色 self.navigationController.navigationBar.tintColor = [UIColor orangeColor]; 复制代码 //设置成图片...:[UIImage new]]; 复制代码 另外可以通过颜色转图片来修改导航条底部分隔线颜色 //动态地改变UIColor的alpha属性可以返回,不同alpha的图片;可用于动态改变导航条的透明度 +...//全局设置导航栏主题,只在AppDelegate中有效, 或者是UINavagaitonController中的RootController 中设置有效 - (void)setNavigationControllerAppearance

    1.6K10
    领券