iOS 状态栏更改颜色

iOS 状态栏更改颜色,第1张

    1.状态栏在普通iPhone上高度是20.但是在iPhone X上是44.

    * 注意:iPhoneX导航栏高度是 44 + 44

    2.状态栏字体颜色

            2.1:黑色: UIStatusBarStyleDefault (默认)

            2.2:白色: UIStatusBarStyleLightContent

方法一 : 在 info.plist 中,将 View controller-based status bar appearance 设为 NO   

1.全局的设置 在app delegate中设置状态栏颜色:

[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent

2.全局隐藏状态栏(会往上移动状态栏的高度,一般不会全局隐藏它)

 [UIApplication sharedApplication].statusBarHidden = YES

方法二:

在 info.plist 中,将 View controller-based status bar appearance 设为 YES (默认值就是YES),或者没有设置。 (建议使用方法一,这个方法我没用过) 

如果值为YES。方法一的设置方法则无效,用下面方法

//在基类的Navigation中设置全局颜色,但是隐藏nav的颜色会不更改

//在VC中设置

//获取高度,然后在特殊界面根据状态栏高度适配

//statusBar高度

链接2

如果依赖返回数据来决定状态栏颜色,可以调用下面方法手动触发preferredStatusBarStyle

注:我这里的导航条上的按钮是自己写了一下,你用的时候,可以根据自己的需要适当修改。

UIImage+GradientColor.h

UIImage+GradientColor.m

几乎在开发每个app中都会使用到 UINavigationController ,然而几乎没人喜欢系统自带的样式,自定义一些 navigation bar 的样式,也变得重要了。本文会从以下几个方面来说明如和自定义 navigation bar 的样式。

系统的 navigation bar 长这样:

我们来看一下 navigation bar 的几个重要模块。

改变 navigation bar 的颜色很容易

translucent 半透明的,看着会有一层毛玻璃效果。

barTintColor 背景色,不是什么 backgroundColor 也不是 tintColor 。

也可以设置一张图当作背景

titleTextAttributes 你可以设置字体颜色等属性

这里是文档

我们甚至可以自己设置 navigationItem.titleView 来改变标题的样式

UIBarButtonItem 可以创建多种类型的按钮,文字、图片、自定义视图,还可以设置它的字体属性。

tintColor 设置后会影响文字或者图片颜色

默认的返回按钮包含一个返回的图片和文字,文字是控制器的标题,没有默认是Back。

给 backBarButtonItem 复值文字类型的 UIBarButtonItem 可以改变返回的文字,复值图片类型的但是不会返回的箭头,然后你的返回按钮就有两个图标。怎么办呢,我们设置一个 navigationItem.leftBarButtonItem 来当作返回按钮,还需要注意的是这时候侧滑返回会失效,需要设置交互手势代理。

自定义样式

隐藏横线

翻译自 https://dmtopolog.com/navigation-bar-customization/


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7788306.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存