     @IBOutlet public weak var cancelButtonBottom: NSLayoutConstraint!
     public var theme: KUIActionSheetProtocol!
     public var tapToDismiss: Bool = true
+    private(set) var parentViewController: UIViewController!
     
     private var showing: Bool = false
-    private var parentViewController: UIViewController!
     private var lastViewBottom: NSLayoutConstraint?
     
     class public func view(parentViewController viewController: UIViewController, theme: KUIActionSheetProtocol = KUIActionSheetDefault()) -> KUIActionSheet? {

        showing = false
        cancelButtonBottom.constant = -CGRectGetHeight(parentViewController.view.frame)
        
        UIView.animateWithDuration(0.15, delay: 0, options: .CurveEaseOut, animations: {
            self.layoutIfNeeded()
        }) { (finished) in
            completion?(true)

    }
    
    public func add(customView view: UIView?) {
        if view?.translatesAutoresizingMaskIntoConstraints ?? false {
            view?.translatesAutoresizingMaskIntoConstraints = false
            
            if let view = view {
                view.addConstraint(NSLayoutConstraint(item: view, attribute: .Height, relatedBy: .Equal, toItem: nil, attribute: .NotAnAttribute, multiplier: 1.0, constant: CGRectGetHeight(view.frame)))
            }
        }
        
        add(view: view)
    }
    
