private void sortChildDrawingOrder() {
        if (mDrawingOrder != DRAW_ORDER_DEFAULT) {
            if (mDrawingOrderedChildren == null) {
                mDrawingOrderedChildren = new ArrayList<View>();
            } else {
                mDrawingOrderedChildren.clear();
            }
            final int childCount = getChildCount();
            for (int i = 0; i < childCount; i++) {
                final View child = getChildAt(i);
                mDrawingOrderedChildren.add(child);
            }
            Collections.sort(mDrawingOrderedChildren, sPositionComparator);
        }
    }
Like {@link View#scrollBy}, but scroll smoothly instead of immediately.

@param x the number of pixels to scroll by on the X axis
@param y the number of pixels to scroll by on the Y axis
@param velocity the velocity associated with a fling, if applicable. (0 otherwise)
library/src/main/java/com/daimajia/slider/library/Tricks/ViewPagerEx.java