Created
March 9, 2016 17:56
-
-
Save andrewconlan/9ab9eacc01d4e2bdd52a to your computer and use it in GitHub Desktop.
extensions on UIView
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
extension UIView { | |
/// When positive, the background of the layer will be drawn with rounded corners. Also effects the mask generated by the `masksToBounds' property. Defaults to zero. Animatable. | |
@IBInspectable var cornerRadius: Double { | |
get { | |
return Double(self.layer.cornerRadius) | |
} | |
set { | |
self.layer.cornerRadius = CGFloat(newValue) | |
} | |
} | |
/// The width of the layer's border, inset from the layer bounds. The border is composited above the layer's content and sublayers and includes the effects of the `cornerRadius' property. Defaults to zero. Animatable. | |
@IBInspectable var borderWidth: Double { | |
get { | |
return Double(self.layer.borderWidth) | |
} | |
set { | |
self.layer.borderWidth = CGFloat(newValue) | |
} | |
} | |
/// The color of the layer's border. Defaults to opaque black. Colors created from tiled patterns are supported. Animatable. | |
@IBInspectable var borderColor: UIColor? { | |
get { | |
return UIColor(CGColor: self.layer.borderColor!) | |
} | |
set { | |
self.layer.borderColor = newValue?.CGColor | |
} | |
} | |
/// The color of the shadow. Defaults to opaque black. Colors created from patterns are currently NOT supported. Animatable. | |
@IBInspectable var shadowColor: UIColor? { | |
get { | |
return UIColor(CGColor: self.layer.shadowColor!) | |
} | |
set { | |
self.layer.shadowColor = newValue?.CGColor | |
} | |
} | |
/// The opacity of the shadow. Defaults to 0. Specifying a value outside the [0,1] range will give undefined results. Animatable. | |
@IBInspectable var shadowOpacity: Float { | |
get { | |
return self.layer.shadowOpacity | |
} | |
set { | |
self.layer.shadowOpacity = newValue | |
} | |
} | |
/// The shadow offset. Defaults to (0, -3). Animatable. | |
@IBInspectable var shadowOffset: CGSize { | |
get { | |
return self.layer.shadowOffset | |
} | |
set { | |
self.layer.shadowOffset = newValue | |
} | |
} | |
/// The blur radius used to create the shadow. Defaults to 3. Animatable. | |
@IBInspectable var shadowRadius: Double { | |
get { | |
return Double(self.layer.shadowRadius) | |
} | |
set { | |
self.layer.shadowRadius = CGFloat(newValue) | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment