我已经使用ViewPager
库创建了一个带有三个片段的应用程序并且工作正常但我的问题是如何更改ViewPager
的动画?
喜欢这个动画:
你可以看到它像一个立方体很好地动画它! 那么任何帮助?
提前致谢:) !!
答案 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, 和手风琴。