ios 如何正确设置导航控制器字体大小?

gwo2fgha  于 2023-02-26  发布在  iOS
关注(0)|答案(1)|浏览(185)

我尝试使用UIKit通过编程设置导航控制器标题的字体大小。当我的视图控制器和导航控制器第一次出现时,它就可以工作,但是当我导航到下一个控制器并尝试使用相同的代码块设置字体大小时,导航栏标题首先使用默认字体大小,然后缩放到设置的字体大小。类似地,当我从这个控制器导航回最初工作正常的控制器时,它开始在默认的字体大小,然后改变到设置的字体大小。我如何让它这样当视图控制器显示时,导航标题文本已经设置好了吗?我已经尝试过将这两个视图控制器的代码块放在viewDidLoad、viewDidAppear、viewWillAppear和willShow导航控制器的代理函数中。如有任何建议,我们将不胜感激!

if let font = UIFont(name: "Roboto-Regular", size:  30) {

        navigationController?.navigationBar.titleTextAttributes = [

            NSAttributedString.Key.font: font,

            NSAttributedString.Key.foregroundColor: UIColor.white

        ]

    }

    navigationController?.navigationBar.setBackgroundImage(nil, for: .default)

    navigationController?.navigationBar.shadowImage = nil

    navigationController?.navigationBar.barTintColor = .sBlue

    navigationController?.navigationBar.isTranslucent = false
cvxl0en2

cvxl0en21#

您可以将其添加到应用委托函数应用程序(_ application:,didFinishLaunchingWithOptions:)中

if let font = UIFont(name: "Roboto-Regular", size:  30) {
        
        UINavigationBar.appearance().titleTextAttributes = [
            
            NSAttributedString.Key.font: font,
            
            NSAttributedString.Key.foregroundColor: UIColor.white
            
        ]
        
    }

它将适用于所有的导航栏

相关问题