Skip to content

Instantly share code, notes, and snippets.

@amixpal
Created November 13, 2019 06:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save amixpal/58ec7e689dffaec0e579926675f15fd1 to your computer and use it in GitHub Desktop.
Save amixpal/58ec7e689dffaec0e579926675f15fd1 to your computer and use it in GitHub Desktop.
@IBDesignable
class RoundedView: UIView {
@IBInspectable
var topCornersRounded: Bool = false {
didSet {
if self.topCornersRounded {
layer.maskedCorners = [.layerMaxXMinYCorner, .layerMinXMinYCorner]
}
}
}
@IBInspectable
var bottomCornersRounded: Bool = false {
didSet {
if self.bottomCornersRounded {
layer.maskedCorners = [.layerMaxXMaxYCorner, .layerMinXMaxYCorner]
}
}
}
@IBInspectable
var allCornerRounded: Bool = false {
didSet {
if self.allCornerRounded {
layer.maskedCorners = [.layerMaxXMaxYCorner, .layerMinXMaxYCorner, .layerMaxXMinYCorner, .layerMinXMinYCorner]
}
}
}
@IBInspectable
var cornerRad: CGFloat = 0 {
didSet {
layer.cornerRadius = cornerRad
}
}
override init(frame: CGRect) {
super.init(frame: frame)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
clipsToBounds = true
topCornersRounded = false
bottomCornersRounded = false
allCornerRounded = false
}
private var theShadowLayer: CAShapeLayer?
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment