摆脱 UITableViewCell 中 UIButton 上的 imageView 色调
Posted
技术标签:
【中文标题】摆脱 UITableViewCell 中 UIButton 上的 imageView 色调【英文标题】:Getting rid of imageView tint on UIButton in UITableViewCell 【发布时间】:2016-02-01 22:28:19 【问题描述】:我的应用中有几个使用图片的按钮。
对于在 Interface Builder 中设置的按钮,我在属性检查器中设置了图像。如我所愿,它显示没有色调。我检查了用于在界面生成器中设置图像的方法是UIButton setImage:forState:
现在,如果我尝试将cellForRowAtIndexPath
中的按钮图像设置为UITableViewController
,则图像上会出现色调。
// This puts a tint over the button
customCell.myButton.setImage(buttonImage, forState: .Normal)
作为一种解决方法,我在按钮后面扔了一个UIImageView
,但是当我为按钮设置动画时,imageView 不会移动,我觉得这很烦人。
我也试过这个:
// This results in a blank image on the button
customCell.myButton.imageView?.contentMode = .ScaleAspectFit
customCell.myButton.imageView?.image = buttonImage
如果有人对我做错了什么有任何建议,我欢迎您的意见。
【问题讨论】:
【参考方案1】:原来imageWithRenderingMode
解决了这个问题。
创建并返回具有指定渲染模式的新图像对象。 具有指定渲染模式的新图像对象。
我需要使用AlwaysOriginal
案例:
始终绘制原始图像,而不将其视为模板。
let buttonImage = UIImage(named: buttonImageName)?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)
【讨论】:
以上是关于摆脱 UITableViewCell 中 UIButton 上的 imageView 色调的主要内容,如果未能解决你的问题,请参考以下文章
动态添加和删除 UITableViewCells 到 UITableView
为 UITableViewCell 上的特定按钮删除 UIButton 事件的链接
UITableViewCell 曲线异常-左侧。这是啥原因造成的?包含图片