【问题标题】:Changing font color of UIBarButtonItem更改 UIBarButtonItem 的字体颜色
【发布时间】:2017-07-03 20:04:56
【问题描述】:

我尝试将右侧栏按钮项的字体颜色更改为紫色,但仍显示为白色。我已经咨询过这个question 和这个question。我该如何解决这个问题?

代码

let sortButton = UIButton(frame: CGRect(x: 0, y: 0, width: 34, height: 15))
    sortButton.setTitle("SORT", for: .normal)
    sortButton.titleLabel?.tintColor = UIColor.myMusicPurple
    sortButton.tintColor = UIColor.myMusicPurple        
    navigationItem.rightBarButtonItem =  UIBarButtonItem(customView: sortButton)
    navigationItem.rightBarButtonItem?.tintColor = UIColor.myMusicPurple

【问题讨论】:

    标签: swift uibutton uinavigationbar uibarbuttonitem uicolor


    【解决方案1】:

    这应该可以解决问题(如果您有纯文本)

    let rightBarButtonItem = UIBarButtonItem(title: "Some text", style: .plain, target: self, action: #selector(someAction))
    rightBarButtonItem.tintColor = UIColor.myMusicPurple
    
    navigationItem.rightBarButtonItem = rightBarButtonItem
    

    【讨论】:

      【解决方案2】:

      请试试这个

      sortButton.setTitleTextAttributes([NSAttributedStringKey.foregroundColor : UIColor.white], for: .normal)
      

      【讨论】:

        【解决方案3】:

        很简单,只需从 Main.stroyboard 中创建一个 UIBarButtonItem 的引用到相应的 swift 文件,就像这样,

        @IBOutlet var yourBarBtn: UIBarButtonItem!
        

        然后写下这一行,

        yourBarBtn.tintColor = .white //your_color
        

        就是这样!

        【讨论】:

          【解决方案4】:

          首先,你需要设置普通属性,然后你就可以像这样写了。

            @IBOutlet weak var btnGenerate: UIBarButtonItem!
          
            btnGenerate.setTitleTextAttributes([NSAttributedString.Key.foregroundColor : UIColor.colorBlue], for: .normal)
          

          【讨论】:

            【解决方案5】:

            如何使用:

            func setTitleColor(UIColor?, for: UIControlState)
            

            文档说它设置标题的颜色以用于指定状态。

            sortButton.setTitleColor( .red, for: .normal)
            

            【讨论】:

            • 这不应该是公认的答案。 UIBarButtonItem 没有 setTitleColor。正确答案是使用tintColor。
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-08-30
            • 2013-10-30
            • 2013-04-26
            • 1970-01-01
            相关资源
            最近更新 更多