question: void presentDecorAnimations ( int position , float offset ) { int animMapSize = mDecorAnimations . size ( ) ; for ( int i = 0 ; i < animMapSize ; i ++ ) { Decor decor = mDecorAnimations . keyAt ( i ) ; ArrayList < Animation > animations = mDecorAnimations . get ( decor ) ; int animListSize = animations . size ( ) ; for ( int j = 0 ; j < animListSize ; j ++ ) { Animation animation = animations . get ( j ) ; if ( animation == null ) { continue ; } if ( ! animation . shouldAnimate ( position ) ) { if ( mPreviousPosition < position && animation . pageEnd < position ) { animation . animate ( decor . contentView , 1 , 0 , position ) ; } else if ( mPreviousPosition > position && animation . pageStart > position ) { animation . animate ( decor . contentView , 0 , 0 , position ) ; } continue ; } animation . animate ( decor . contentView , offset , 0 , position ) ; } } mPreviousPosition = position ; }
target:  Run the animations based on the Decor animations saved within the presenter and the offset of the scrolling.