如何解决 UIBarButtonItem 的色调问题?
Posted
技术标签:
【中文标题】如何解决 UIBarButtonItem 的色调问题?【英文标题】:How fix my problem with tint color for UIBarButtomItem? 【发布时间】:2020-06-06 23:13:03 【问题描述】:我尝试在导航栏上创建菜单按钮,我只想设置没有文字的图像。但是如果我尝试将图像设置为“barButtomItem.image”,那么颜色会自动设置为蓝色,我可以通过某种方式修复它吗?
blue color for button
var menuButton: UIBarButtonItem
let button = UIBarButtonItem()
button.image = UIImage(named: "menubtn")
return button
rootVC.navigationItem.leftBarButtonItem = menuButton
好的,我可以为按钮设置 tintColor
var menuButton: UIBarButtonItem
let button = UIBarButtonItem()
button.image = UIImage(named: "menubtn")
button.tintColor = UIColor(named: "myGreenColor")
return button
rootVC.navigationItem.leftBarButtonItem = menuButton
但阴影的颜色也会改变
green shadow
我可以为按钮的阴影设置黑色吗?或者是否有可能以某种方式禁用自动为图像分配颜色的功能?
在我看来,如果您向 BarButtonItem 添加一个按钮并为其分配一个图像,这个问题也可以解决,我尝试使用情节提要执行此操作,但我不知道如何使用代码执行此操作
【问题讨论】:
【参考方案1】:试试这个?不过我还没有测试过。
var menuButton: UIBarButtonItem
let button = UIButton(frame: CGRect(x: 0, y: 0, width: 40, height: 40))
button.setImage(UIImage(named: "menubtn"), for: .normal)
return UIBarButtonItem(customView: button)
rootVC.navigationItem.leftBarButtonItem = menuButton
【讨论】:
以上是关于如何解决 UIBarButtonItem 的色调问题?的主要内容,如果未能解决你的问题,请参考以下文章
如何颜色选择 UIBarButtonItem tintColor
如何将 UIBarButtonItem tintcolor 设置为非默认 UIColor