Xcode’s Interface Builder requires that you implement both or neither initializers for @IBDesignable classes to render properly in IB.
If you implement required init(coder aDecoder: NSCoder) you’ll need to override init(frame: CGRect) as well, otherwise “the agent will crash” as seen in the errors thrown by Xcode.
To do so add the following code to your class:
override init(frame: CGRect) {
super.init(frame: frame)
}