     }
     
     internal func singleTap(gesture: UITapGestureRecognizer) {
+        guard !animating else { return }
         guard gesture.locationInView(self).y < CGRectGetMinY(containerView.frame) && tapToDismiss else { return }
         dismiss()
     }

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

        let targetViewController: UIViewController = viewController ?? parentViewController.rootViewController
        
        showing = true
        animating = true
        backgroundColor = theme.backgroundColor
        targetViewController.view.endEditing(true)
        
