Ejemplo n.º 1
0
 public ValueAnimator clone() {
   final ValueAnimator anim = (ValueAnimator) super.clone();
   if (mUpdateListeners != null) {
     ArrayList<AnimatorUpdateListener> oldListeners = mUpdateListeners;
     anim.mUpdateListeners = new ArrayList<AnimatorUpdateListener>();
     int numListeners = oldListeners.size();
     for (int i = 0; i < numListeners; ++i) {
       anim.mUpdateListeners.add(oldListeners.get(i));
     }
   }
   anim.mSeekTime = -1;
   anim.mPlayingBackwards = false;
   anim.mCurrentIteration = 0;
   anim.mInitialized = false;
   anim.mPlayingState = STOPPED;
   anim.mStartedDelay = false;
   PropertyValuesHolder[] oldValues = mValues;
   if (oldValues != null) {
     int numValues = oldValues.length;
     anim.mValues = new PropertyValuesHolder[numValues];
     anim.mValuesMap = new HashMap<String, PropertyValuesHolder>(numValues);
     for (int i = 0; i < numValues; ++i) {
       PropertyValuesHolder newValuesHolder = oldValues[i].clone();
       anim.mValues[i] = newValuesHolder;
       anim.mValuesMap.put(newValuesHolder.getPropertyName(), newValuesHolder);
     }
   }
   return anim;
 }