     public var scrollCountViewHeight:CGFloat = 20
     private var dragging:Bool = false
     private var dynamicUnpagedHeight:Bool = false
-    private var currentCellRect:CGRect?
-    
+    var y:CGFloat = -1000
+
     public var opacity:CGFloat = 1 {
         didSet {
             scrollCountView.alpha = opacity

                size: CGSize(width: scrollCountView.width, height: scrollCountViewHeight)
            )
        }
        
        currentCellRect = nil
    }
    
}
        switch (keyPath, object) {
            
        case (.Some("contentOffset"), _):
            if y != tableView.contentOffset.y && totalScrollCountNum != 0 {
                y = tableView.contentOffset.y
                self.updateScrollPosition()
            }
            default:
            super.observeValueForKeyPath(keyPath, ofObject: object, change: change, context: context)
        }
    }
    
    func updateScrollPosition() {

        //var currentCellRect:CGRect?
        let indexPaths = tableView.indexPathsForVisibleRows
        var currentCellRect:CGRect?
        if let indexPaths = indexPaths {
            if indexPaths.count > 0 {
                currentCellRect = tableView.rectForRowAtIndexPath(indexPaths[0])
