一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络,希望未来技术之巅上有你们也有我。

源码下载链接

前言

直接看下面的gif图片效果

使用起来也是很简单的。下面的gif图片可以看到每次进去专辑列表详情控制器,顶部的颜色都是根据图片来计算出的均匀色,作为顶部的颜色。

正题

OC

UIColor *color = [MDImageColor mostColor:[UIImage imageNamed:[NSString new]]].color;

Swift

之前在(NSWL)Swift的项目里面使用过 获取图片均匀色的需求.也是需求同样的使用OC的封装

把颜色转换成String

// UIColor -> Hex String

var hexString: String? {

var red: CGFloat = 0

var green: CGFloat = 0

var blue: CGFloat = 0

var alpha: CGFloat = 0

let multiplier = CGFloat(255.999999)

guard self.getRed(&red, green: &green, blue: &blue, alpha: &alpha) else {

return nil

}

if alpha == 1.0 {

return String(

format: "#%02lX%02lX%02lX",

Int(red * multiplier),

Int(green * multiplier),

Int(blue * multiplier)

)

}

else {

return String(

format: "#%02lX%02lX%02lX%02lX",

Int(red * multiplier),

Int(green * multiplier),

Int(blue * multiplier),

Int(alpha * multiplier)

)

}

}

把String转换成颜色

UIColor(hexString: color)

精彩链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: