如何更改ViewPager指标动画

时间:2013-11-17 13:51:44

标签: android android-viewpager

我已经使用ViewPager库创建了一个带有三个片段的应用程序并且工作正常但我的问题是如何更改ViewPager的动画?

喜欢这个动画:

enter image description here

你可以看到它像一个立方体很好地动画它! 那么任何帮助?

提前致谢:) !!

2 个答案:

答案 0 :(得分:3)

您必须为ViewPager提供PageTransformer

创建一个实现PageTransformer的类,并根据您想要的动画覆盖transformPage()

public class CustomPageTransformer implements ViewPager.PageTransformer {

    public void transformPage(View view, float position) {

    }
}


ViewPager pager = (ViewPager) findViewById(R.id.pager);

pager.setPageTransformer(true, new CustomPageTransformer());


你可以找到几个例子here

答案 1 :(得分:2)

检查Jazzy View Pager,它实现了您正在寻找的立方体过渡:

https://github.com/jfeinstein10/JazzyViewPager

只需将标准视图寻呼机替换为com.jfeinstein.jazzyviewpager.JazzyViewPager(可能在布局XML文件中)。然后将setTransitionEffect用于TransitionEffect枚举中定义的值之一。

pager.setTransitionEffect(TransitionEffect.CubeIn);

您还必须在实例化页面时调用setObjectForPosition方法,为寻呼机提供对托管项目的引用:

pager.setObjectForPosition(subactivity, position);

目前可用的过渡效果是:         标准,         片剂,         CubeIn,         CubeOut,         翻转,         堆,         放大,         缩小,         RotateUp,         RotateDown,         和手风琴。