如何以编程方式将自定义图像设置为 UIBarButtonItem
Posted
技术标签:
【中文标题】如何以编程方式将自定义图像设置为 UIBarButtonItem【英文标题】:How to set a Custom image programmatically to and UIBarButtonItem 【发布时间】:2019-04-04 22:09:42 【问题描述】:我在将自定义图像分配给 UIBarButtonItem 时遇到问题,主要问题是创建按钮时图像显示为白色方块。 这是我的代码:
fileprivate func configureNavigationBar()
tabBarController?.navigationItem.title = lot.name
let exportImg: UIImage = UIImage(named: "action.png")!
let addButton = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(showCreationView(_:)))
let exportByEmail = UIBarButtonItem(image: exportImg, style: .done, target: self, action: #selector(exportDataByEmail(_:)))
tabBarController?.navigationItem.rightBarButtonItems = [exportByEmail,addButton]
问题在于 exportByEmail,图像位于从我的资产添加的变量 exportImg 中:
从我的代码中得到的结果:
【问题讨论】:
【参考方案1】:您的图片背景必须是透明的,并且您可以将图片始终设置为原始渲染模式,以保持原样显示,如下所示
let exportByEmail = UIBarButtonItem(image: exportImg.withRenderingMode(.alwaysOriginal), style: .done, target: self, action: #selector(exportDataByEmail(_:)))
【讨论】:
以上是关于如何以编程方式将自定义图像设置为 UIBarButtonItem的主要内容,如果未能解决你的问题,请参考以下文章
CANON SDK 将自定义白平衡设置为保存的 JPG 图像
如何以编程方式将自定义 uiview 添加到视图控制器 SWIFT
如何以编程方式将自定义 Java 视图类加载到 RelativeLayout