public void previous(ControllerAnimator animator){
  if (animator == null)   throw new NullPointerException("Animator cannot be null");
  if (iterator.hasPrevious()) {
    View currentView=mViews.get(iterator.nextIndex());
    if (iterator.nextIndex() > 0) {
      View previousView=iterator.previous();
      if (isUsingDefaultListener())       previousView.setOnClickListener(listener);
      animator.setOldView(currentView);
      animator.setNewView(previousView);
      currentView.startAnimation(animator);
    }
  }
 else {
    if (mLoop) {
      iterator=mViews.listIterator();
      for (int i=0; i < mViews.size() - 1; i++) {
        iterator.next();
      }
      View currentView=mViews.get(0);
      View previousView=mViews.get(mViews.size() - 1);
      if (mUseDefaultListener)       previousView.setOnClickListener(listener);
      animator.setOldView(currentView);
      animator.setNewView(previousView);
      currentView.startAnimation(animator);
    }
  }
}

public void previous ( ControllerAnimator animator ) { if ( animator == null ) throw new NullPointerException ( "Animator cannot be null" ) ; if ( iterator . hasPrevious ( ) ) { View currentView = mViews . get ( iterator . nextIndex ( ) ) ; if ( iterator . nextIndex ( ) > 0 ) { View previousView = iterator . previous ( ) ; if ( isUsingDefaultListener ( ) ) previousView . setOnClickListener ( listener ) ; animator . setOldView ( currentView ) ; animator . setNewView ( previousView ) ; currentView . startAnimation ( animator ) ; } } else { if ( mLoop ) { iterator = mViews . listIterator ( ) ; for ( int i = 0 ; i < mViews . size ( ) - 1 ; i ++ ) { iterator . next ( ) ; } View currentView = mViews . get ( 0 ) ; View previousView = mViews . get ( mViews . size ( ) - 1 ) ; if ( mUseDefaultListener ) previousView . setOnClickListener ( listener ) ; animator . setOldView ( currentView ) ; animator . setNewView ( previousView ) ; currentView . startAnimation ( animator ) ; } } }
go back to the previous view
