importandroid.view.View;importcom.daimajia.slider.library.Animations.BaseAnimationInterface;importcom.daimajia.slider.library.R;importcom.nineoldandroids.animation.ObjectAnimator;importcom.nineoldandroids.animation.ValueAnimator;importcom.nineoldandroids.view.ViewHelper;/*** A demo class to show how to use {@linkcom.daimajia.slider.library.Animations.BaseAnimationInterface}
* to make your custom animation in {@linkcom.daimajia.slider.library.Tricks.ViewPagerEx.PageTransformer} action.*/
public class DescriptionAnimation1 implementsBaseAnimationInterface {
@Overridepublic voidonPrepareCurrentItemLeaveScreen(View current) {
View descriptionLayout=current.findViewById(R.id.description_layout);if(descriptionLayout!=null){
current.findViewById(R.id.description_layout).setVisibility(View.INVISIBLE);
}
}/*** When next item is coming to show, let's hide the description layout.
*@paramnext*/@Overridepublic voidonPrepareNextItemShowInScreen(View next) {
View descriptionLayout=next.findViewById(R.id.description_layout);if(descriptionLayout!=null){
next.findViewById(R.id.description_layout).setVisibility(View.INVISIBLE);
}
}
@Overridepublic voidonCurrentItemDisappear(View view) {
}/*** When next item show in ViewPagerEx, let's make an animation to show the
* description layout.
*@paramview*/@Overridepublic voidonNextItemAppear(View view) {
View descriptionLayout=view.findViewById(R.id.description_layout);if(descriptionLayout!=null){float layoutY =ViewHelper.getY(descriptionLayout);
view.findViewById(R.id.description_layout).setVisibility(View.GONE); ValueAnimator animator=ObjectAnimator.ofFloat(
descriptionLayout,"y",layoutY +descriptionLayout.getHeight(),
layoutY).setDuration(500);
animator.start();
}
}
}