2016-11-14 68 views
0

如何在UIImage中使用颜色作为占位符?例如,我有一个这样的形象:如何在UIImage中使用颜色作为占位符

而且我想改变红到其他图像,并获得这样的:

我想到了检查像素的颜色和检查它是否是红色并找到框架,但也许你知道任何更好的方法?

+0

您可以简单地将图像的背景颜色设置为红色。 – Rajat

+0

你是什么意思?我必须用图像替换红色 – Woodgun11

+0

检查图像是否为零,然后用图像替换红色 – Rajat

回答

0

你需要采取两种View,一个是UIView绿色的的backgroundColor(让我们说),对UIView你需要把你UIImageView,你需要根据所设定的约束。现在将您的UIImageView的背景颜色设置为红色,并根据您的要求,检查UIImageView'simage是否为零,如果是,则可以将图像添加到您的UIImageView

+0

谢谢,我会尽力做到这一点。它看起来比寻找红色框架并处理它更容易。 – Woodgun11

0

这是一个函数,它将根据指定的颜色创建一个UIImage。您可以用.red调用此方法来生成所需的占位符图像。

static func image(fromColor color: UIColor) -> UIImage { 
    let rect = CGRect(x: 0, y: 0, width: 1, height: 1) 

    let renderer = UIGraphicsImageRenderer(bounds: rect) 

    let img = renderer.image { ctx in 
     ctx.cgContext.setFillColor(color.cgColor) 
     ctx.cgContext.fill(rect) 
    } 

    return img 
}