ViewPager不滑动,淡入淡出的效果,你get到了吗?
如何使用?
viewpager.setAdapter之后,直接使用viewpager.setPageTransformer(true,new NGGuidePageTransformer());进行设置,即可看到效果。

附: NGGuidePageTransformer的源码:
public class NGGuidePageTransformer implements ViewPager.PageTransformer {
private static final float MIN_ALPHA = 0.0f; //最小透明度
public void transformPage(View view, float position) {
int pageWidth = view.getWidth(); //得到view宽
if (position < -1) { // [-Infinity,-1)
// This page is way off-screen to the left. 出了左边屏幕
view.setAlpha(0);
} else if (position <= 1) { // [-1,1]
if (position < 0) {
//消失的页面
view.setTranslationX(-pageWidth * position); //阻止消失页面的滑动
} else {
//出现的页面
view.setTranslationX(pageWidth); //直接设置出现的页面到底
view.setTranslationX(-pageWidth * position); //阻止出现页面的滑动
}
// Fade the page relative to its size.
float alphaFactor = Math.max(MIN_ALPHA, 1 - Math.abs(position));
//透明度改变Log
view.setAlpha(alphaFactor);
} else { // (1,+Infinity]
// This page is way off-screen to the right. 出了右边屏幕
view.setAlpha(0);
}
}
}
本文介绍如何在ViewPager中实现页面切换时的淡入淡出效果。只需在设置Adapter后,调用setPageTransformer方法并传入NGGuidePageTransformer实例,即可轻松实现过渡动画。该方法适用于希望增强用户体验的开发者。

被折叠的 条评论
为什么被折叠?



