 
     public func scrollViewDidScroll(_ scrollView: UIScrollView) {
 
-        if isJumping || isOrientationChange { return }
+        if isJumping || isLayoutingSubviews { return }
 
         // update currentIndex
         if scrollView.contentOffset.x >= frame.width * CGFloat(currentIndex + 1) {

    }

    open override func layoutSubviews() {
        super.layoutSubviews()

        reloadData(isOrientationChange: true)


    private func reset() {

        if !isLayoutingSubviews {
            currentIndex = 0
        }

