Esempio n. 1
0
 // Returns the distance that over the scroll limit.
 public int startScroll(int distance, int min, int max) {
   /// M: [FEATURE.ADD] fancy layout @{
   mScrollMax = max;
   mScrollMin = min;
   mScroller.setMaxScrollLength(max);
   mScroller.setMinScrollLength(min);
   /// @}
   int currPosition = mScroller.getCurrX();
   int finalPosition = mScroller.isFinished() ? currPosition : mScroller.getFinalX();
   int newPosition = Utils.clamp(finalPosition + distance, min, max);
   if (newPosition != currPosition) {
     mScroller.startScroll(
         currPosition,
         0, // startX, startY
         newPosition - currPosition,
         0,
         0); // dx, dy, duration
   }
   return finalPosition + distance - newPosition;
 }