lazy var navigationBar = UINavigationBar(frame: CGRect(x: 0, y: 20, width: screen_width, height: 44))

    navigationBar.barTintColor = highorange
    navigationBar.isTranslucent = false
    navigationBar.titleTextAttributes = [NSAttributedStringKey.foregroundColor: grayblack]


我初始化了一个导航栏,并且bartintcolor正在工作。但是isTranslucent和titleTextAttributes不会更改。

最佳答案

在我的示例中,它可以工作。

关于Apple文档中的isTranslucent属性


  如果您在具有半透明自定义背景图像的导航栏上将此属性设置为false,则导航栏将为图像提供不透明的背景,如果导航栏为黑色样式,则为黑色;如果导航栏为默认样式,则为白色;或者导航栏为barTintColor(如果定义了自定义值)。


当我添加以下代码时,titleTextAttributes也可以使用

navigationBar.titleTextAttributes = [NSAttributedStringKey.foregroundColor: UIColor.green]
let item = UINavigationItem(title: "Hello world")
navigationBar.setItems([item], animated: false)


我得到以下结果:

ios - ios-isTranslucent和titleTextAttributes无法正常工作-LMLPHP

关于ios - ios-isTranslucent和titleTextAttributes无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49415498/

10-13 03:59