美文网首页iOS学习笔记
UINavigationBar背景色透明度

UINavigationBar背景色透明度

作者: 山是水的故事 | 来源:发表于2017-03-10 21:25 被阅读78次

UINavigationBar背景色的问题

设置UINavigationBar背景色的通用方法

    [self.navigationBar setTintColor:[UIColor whiteColor]];
    [self.navigationBar setBarTintColor:[UIColor egovaColor]];
    [self.navigationBar setTitleTextAttributes:
     @{NSFontAttributeName:[UIFont boldSystemFontOfSize:20],
       NSForegroundColorAttributeName:[UIColor whiteColor]}];

通过以上的方法,我们能够很简单的设置UINavigationBar颜色,但是我们在使用过程中发现,当UIViewController中的背景色不同的时候,会发现UINavigationBar会有略微的不同。通过xcode工具发现是因为UINavigationBar有透明度,这个透明度通过各种方式都无法处理。

后面发现使用一行简单的代码就能够处理

self.navigationBar.translucent = NO;

通过这个设置后出现了一个新的问题

Paste_Image.png

整个视图往下偏移了64像素,64像素刚好是导航栏的高度。

解决该问题的方法是:

self.extendedLayoutIncludesOpaqueBars = YES;

translucent = NO的时候(导航栏背景色不透明)
extendedLayoutIncludesOpaqueBars=NO, self.view起始点位0, 64
extendedLayoutIncludesOpaqueBars=YES, self.view起始点位0, 0

相关文章

  • UINavigationBar背景色透明度

    UINavigationBar背景色的问题 设置UINavigationBar背景色的通用方法 通过以上的方法,我...

  • iOS-导航栏背景色和透明度探究

    1.设置背景色--backgroundColor UINavigationBar *bar= self.navig...

  • 导航栏设置

    //导航栏按钮设置 //导航栏背景色全局设置(写在appdelegate里) [[UINavigationBar ...

  • 关于UINavigationBar和UITabBar的trans

    UINavigationBar的translucent属性是设置导航栏的透明度的,translucent属性默认是...

  • WPF动画

    //-------------改变按钮的背景色为绿色 //-------------改变窗体透明度 //-----...

  • 导航栏透明度问题

    设置导航栏背景颜色: 此方法不能设置颜色透明度,如果需要设置背景色透明度,只能用图片代替或者删除底层遮盖视图 删除...

  • 导航栏透明度问题

    设置导航栏背景颜色: 此方法不能设置颜色透明度,如果需要设置背景色透明度,只能用图片代替或者删除底层遮盖视图删除底...

  • windows cmd 技巧

    1.更改背景色等 在标题栏右击鼠标,选择属性,根据自己的需求,设置颜色,字体,选项,布局等。对于背景色的透明度,你...

  • UiAutomator2.0颜色验证方案

    Android自动化测试中会有不少背景色、透明度等测试验证,但各种框架都没有提供获取对象背景色等API,那么面对这...

  • Shader Forge 实现颜色渐变、透明度渐变效果

    需求 制作UGUI时,很多控件使用到了背景色,背景色效果包含:颜色的渐变和透明度的渐变。 因涉及到多种类似的背景图...

网友评论

    本文标题:UINavigationBar背景色透明度

    本文链接:https://www.haomeiwen.com/subject/wcvogttx.html