 	/// Hides the drop down.
 	public func hide() {
 		DropDown.VisibleDropDown = nil
+		
+		if hidden {
+			return
+		}
 		
 		UIView.animateWithDuration(
 			Animation.Duration,

	:returns: Wether it succeed and how much height is needed to display all cells at once.
	*/
	public func show() -> (canBeDisplayed: Bool, offscreenHeight: CGFloat?) {
		if let visibleDropDown = DropDown.VisibleDropDown {
			visibleDropDown.cancel()
		}

	
	/**
	Creates a new instance of a drop down.
	Don't forget to setup the `dataSource`,
	the `anchorView` and the `selectionAction`
	at least before calling `show()`.
	*/
	convenience init() {
