「SwiftUI」白色字体状态栏

317 阅读1分钟
前言:有时候开发页面背景色会为深色,此时状态栏的字体为常规的黑色时无法看清,体验较差,所以需要将状态栏的颜色变为白色更为清晰和舒适

问题解决:

步骤1:info.plist文件中的View controller-based status bar appearance设置为YES
步骤2:通过代码改变该深色页面状态栏的状态值,使状态栏的状态为白色字体,即可解决

贴代码:

override var preferredStatusBarStyle: UIStatusBarStyle {
        return .lightContent
	}

注意:有时候设置了上面方法但无法生效,是因为你的页面存在导航栏,此时需要在自定义的NavigationController中加入重写childViewControllerForStatusBarStyle方法

//有导航栏的页面修改状态栏颜色
    override var childForStatusBarStyle: UIViewController?{
        return self.topViewController
    }

或者使用RTRootNavigationController第三方库,使用RTRootNavigationController当做NavigationController

未设置前页面展示:

在这里插入图片描述

设置后页面展示:

在这里插入图片描述

整理不易,望大家多多点赞,谢谢大家!