这是我的代码。它对于水平变换动画效果很好。我想垂直转换我的 ViewPager 过渡动画。
public class AccordionPageTransformer implements ViewPager.PageTransformer {
@Override
public void transformPage(View page, float position) {
// Counteract the default slide transition
page.setTranslationX(-position * page.getWidth());
page.setPivotX(position < 0 ? 0 : page.getWidth());
page.setScaleX(1 - Math.abs(position));
}}
最佳答案
在 ViewPager 中试试这个,
if (position < -1) {
page.setAlpha(0);
} else if (position <= 1) {
page.setAlpha(1);
// Counteract the default slide transition
page.setTranslationX(page.getWidth() * -position);
//Set Y position to swipe in from top
float yPosition = position * page.getHeight();
page.setTranslationY(yPosition);
} else {
page.setAlpha(0);
}
或者您也可以使用ViewPager2它提供单行代码来使滚动垂直,
myViewPager2.setOrientation(ViewPager2.ORIENTATION_VERTICAL);
关于java - 如何将此水平 ViewPager 变压器修改为垂直变压器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54957356/