Skip to content

Instantly share code, notes, and snippets.

@Ariandr
Created March 5, 2018 11:47
Show Gist options
  • Select an option

  • Save Ariandr/02f376292a2fc546d826c857c2c9c2f3 to your computer and use it in GitHub Desktop.

Select an option

Save Ariandr/02f376292a2fc546d826c857c2c9c2f3 to your computer and use it in GitHub Desktop.
Make UIColor darker(-0.1) or lighter(0.5). For example, let color = color.shadeColor(factor: 0.35) // makes color lighter
import UIKit
extension UIColor {
func shadeColor(factor: CGFloat) -> UIColor {
var r: CGFloat = 0
var g: CGFloat = 0
var b: CGFloat = 0
var a: CGFloat = 0
let t: CGFloat = factor < 0 ? 0 : 1
let p: CGFloat = factor < 0 ? -factor : factor
getRed(&r, green: &g, blue: &b, alpha: &a)
r = (t - r) * p + r
g = (t - g) * p + g
b = (t - b) * p + b
return UIColor(red: r, green: g, blue: b, alpha: a)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment