         
     }
     
+    private func getLeftCenter(view: UIView) -> CGPoint {
+        
+        var leftPoint: CGPoint = CGPointMake(view.frame.origin.x - self.scrollView.frame.size.width + view.frame.size.width + self.distanceBetweenViews, self.scrollView.contentOffset.y)
+        return leftPoint
+        
+    }
+    
     private func scrollToLeftViewContentOffSetWithView(view: UIView) {
         
-        var leftPoint: CGPoint = CGPointMake(view.frame.origin.x - self.scrollView.frame.size.width + view.frame.size.width + self.distanceBetweenViews, self.scrollView.contentOffset.y)
-        
+        var leftPoint = self.getLeftCenter(view)
         self.updateScrollViewContentOffSet(leftPoint)
         
     }
     
     private func updateScrollViewContentOffSet(point: CGPoint) {
+        
+        self.findCurrentIndex(point)
         
         UIView.animateWithDuration(0.5, animations: { () -> Void in
             self.scrollView.setContentOffset(point, animated: false)

            var view: UIView = viewsArray[i]
            view.tag = i
            
            view.frame.origin.x = (CGFloat(i)*self.distanceBetweenViews) + view.frame.size.width*CGFloat(i+1) + self.distanceBetweenViews
            
            self.itemsQueueArray.addObject(view)
            

        
    }
    
    private func getCenterPoint(view: UIView) -> CGPoint {
        
        var centerPoint: CGPoint = CGPointMake(view.frame.origin.x - (scrollView.frame.size.width/2) + (view.frame.size.width/2), self.scrollView.contentOffset.y)
        return centerPoint
        
    }
    
    private func scrollToCenterViewContentOffSetWithView(view: UIView) {

        var centerPoint = self.getCenterPoint(view)
        self.updateScrollViewContentOffSet(centerPoint)
        
    }
