     override open func didAddSubview(_ subview: UIView) {
         super.didAddSubview(subview)
         
-        subview.addObserver(self, forKeyPath:"isHidden", options: [.new, .old], context: nil)
+        subview.addObserver(self, forKeyPath:"hidden", options: [.new, .old], context: nil)
         subview.addObserver(self, forKeyPath:"frame", options: [.new, .old], context: nil)
         subview.addObserver(self, forKeyPath:"center", options: [.new, .old], context: nil)
 

                {
                    setNeedsLayout()
                    
                    if keyPath == "isHidden" && !(change![.newKey] as! Bool)
                    {
                        sbv.setNeedsDisplay()
                    }

        super.willRemoveSubview(subview)
        
        subview.tg_layoutCompletedDo(nil)
        subview.removeObserver(self, forKeyPath: "hidden")
        subview.removeObserver(self, forKeyPath: "frame")
        subview.removeObserver(self, forKeyPath: "center")

