         self.indicatorViewBackgroundColor = indicatorViewBackgroundColor
         finishInit()
     }
-    @available(*, deprecated, message: "Use init(frame:titles:index:backgroundColor:titleColor:indicatorViewBackgroundColor:selectedTitleColor:) instead.")
-    convenience public init(titles: [String]) {
-        self.init(frame: CGRect.zero,
-                  titles: titles,
-                  index: 0,
-                  backgroundColor: DefaultColors.backgroundColor,
-                  titleColor: DefaultColors.titleColor,
-                  indicatorViewBackgroundColor: DefaultColors.indicatorViewBackgroundColor,
-                  selectedTitleColor: DefaultColors.selectedTitleColor)
-    }
-    
-    @available(*, deprecated, message: "Use init(frame:titles:index:backgroundColor:titleColor:indicatorViewBackgroundColor:selectedTitleColor:) instead.")
-    convenience override public init(frame: CGRect) {
-        self.init(frame: frame,
-                  titles: ["First", "Second"],
-                  index: 0,
-                  backgroundColor: DefaultColors.backgroundColor,
-                  titleColor: DefaultColors.titleColor,
-                  indicatorViewBackgroundColor: DefaultColors.indicatorViewBackgroundColor,
-                  selectedTitleColor: DefaultColors.selectedTitleColor)
-    }
     @available(*, unavailable, message: "Use init(frame:titles:index:backgroundColor:titleColor:indicatorViewBackgroundColor:selectedTitleColor:) instead.")
     convenience init() {
         self.init(frame: CGRect.zero,
                   titles: ["First", "Second"],
                   index: 0,
-                  backgroundColor: DefaultColors.backgroundColor,
-                  titleColor: DefaultColors.titleColor,
-                  indicatorViewBackgroundColor: DefaultColors.indicatorViewBackgroundColor,
-                  selectedTitleColor: DefaultColors.selectedTitleColor)
+                  backgroundColor: Color.background,
+                  titleColor: Color.title,
+                  indicatorViewBackgroundColor: Color.indicatorViewBackground,
+                  selectedTitleColor: Color.selectedTitle)
     }
     fileprivate func finishInit() {
         layer.masksToBounds = true

        moveIndicatorViewToIndex(animated, shouldSendEvent: (self.index != oldIndex || alwaysAnnouncesValue))
    }
    
    // MARK: - Animations
    fileprivate func moveIndicatorViewToIndex(_ animated: Bool, shouldSendEvent: Bool) {
        if animated {
            if shouldSendEvent && announcesValueImmediately {
                sendActions(for: .valueChanged)
            }
            UIView.animate(withDuration: bouncesOnChange ? AnimationParameters.animationWithBounceDuration : AnimationParameters.animationNoBounceDuration,
                           delay: 0.0,
                           usingSpringWithDamping: bouncesOnChange ? AnimationParameters.animationWithBounceSpringDamping : 1.0,
                           initialSpringVelocity: 0.0,
                           options: [UIViewAnimationOptions.beginFromCurrentState, UIViewAnimationOptions.curveEaseOut],
                           animations: {

        return UInt(distances.index(of: distances.min()!)!)
    }
    fileprivate func moveIndicatorView() {
        indicatorView.frame = titleLabels[Int(self.index)].frame
        layoutIfNeeded()
    }
    
    // MARK: Action handlers
    @objc fileprivate func tapped(_ gestureRecognizer: UITapGestureRecognizer!) {
        let location = gestureRecognizer.location(in: self)
        try! setIndex(nearestIndex(toPoint: location))
    }
    @objc fileprivate func panned(_ gestureRecognizer: UIPanGestureRecognizer!) {
        guard !panningDisabled else {
            return
        }
