         
         let container = effectView?.contentView ?? self.view!
         container.addSubview(view)
-        self.view.addConstraints([
-            NSLayoutConstraint(item: container, attribute: .centerX,
-                               relatedBy: .equal,
-                               toItem: view, attribute: .centerX,
-                               multiplier: 1, constant: 0),
-            NSLayoutConstraint(item: container, attribute: .centerY,
-                               relatedBy: .equal,
-                               toItem: view, attribute: .centerY,
-                               multiplier: 1, constant: 0)
-            ])
-        
+        
+        switch contentMode {
+        case .bottom:
+            container.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "|-0-[view]-0-|", options: [], metrics: nil, views: ["view": view]))
+            container.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:[view]-0-|", options: [], metrics: nil, views: ["view": view]))
+        default:
+            container.addConstraints([
+                NSLayoutConstraint(item: container, attribute: .centerX,
+                                   relatedBy: .equal,
+                                   toItem: view, attribute: .centerX,
+                                   multiplier: 1, constant: 0),
+                NSLayoutConstraint(item: container, attribute: .centerY,
+                                   relatedBy: .equal,
+                                   toItem: view, attribute: .centerY,
+                                   multiplier: 1, constant: 0)
+                ])
+            
+        }
+
         if animated && oldContent != nil {
             animateContent(from: (oldContent!, oldContentType), to: (content!, contentType), completion: completion)
         } else {
             completion(true)
         }
     }
-}
-
-extension Hud {
     
     public static func loading() -> Hud {
         let hud = Hud()
         Manager.instance.display(hud: hud)
-        hud.setContent(view: hud.instantiateLoader(), animated: false, type: .loader)
+        hud.set(content: hud.instantiateLoader(), animated: false, type: .loader)
         return hud
     }
 

    }
    
    open func setLoading(animated: Bool = true) {
        setContent(view: instantiateLoader(), animated: animated, type: .loader)
    }
    
    open func set(text: String, buttons: [String] = [], action: Action? = nil, animated: Bool = true) {

    @IBOutlet public
    weak var content: UIView?
    
    public fileprivate(set) var contentType: ContentType?
    
    @IBOutlet
    fileprivate weak var effectView: UIVisualEffectView?
