Skip to content

Instantly share code, notes, and snippets.

@trulyronak
Forked from feighter09/ViewUtilities.swift
Created April 28, 2016 04:35
Show Gist options
  • Save trulyronak/e843a322262ef7b415818a3b25c12777 to your computer and use it in GitHub Desktop.
Save trulyronak/e843a322262ef7b415818a3b25c12777 to your computer and use it in GitHub Desktop.
IBInspectable UIView Extensions for Fun and Profit
extension UIView {
@IBInspectable var borderColor: UIColor? {
get { return layer.borderColor.map(UIColor.init) }
set { layer.borderColor = newValue?.CGColor }
}
@IBInspectable var borderWidth: CGFloat {
get { return layer.borderWidth }
set { layer.borderWidth = newValue }
}
@IBInspectable var cornerRadius: CGFloat {
get { return layer.cornerRadius }
set { layer.cornerRadius = newValue }
}
// Proof of concept, not tested
@IBInspectable var backgroundImage: UIImage! {
get { return nil } // maybe use associated objects, you can't add properties in extensions
set {
let imageView = UIImageView(image: newValue)
imageView.frame = bounds
addSubview(imageView)
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment