     /// - Parameter item: Item to populate.
     open func populate(for item: TMBarItemable) {
         let showBadge = item.badgeValue != nil
-        badge.value = item.badgeValue
+        if showBadge {
+            badge.value = item.badgeValue
+        }
         updateBadgeVisibility(showBadge, animated: true)
-        badgeContainer.isHidden = badge.isHidden
     }
     
     /// Update the button for a new selection state.

            }, completion: { (isFinished) in
                if isFinished {
                    self.badge.isHidden = true
                    self.badge.transform = .identity
                    self.badge.alpha = 1.0
                }

        } else {
            guard animated else {
                badge.isHidden = true
                badgeContainer.isHidden = true
                return
            }
            
