我的 ViewPager 有一个自定义要求。我想要的是我的寻呼机默认应该有一个像DepthPageTransformer这样的水平 pageTransformer 。现在在屏幕上我有一个按钮,我希望我的当前页面从底部滑动到顶部,我的下一页像VerticalPageTransformer一样替换它,一旦页面更改,页面转换器应该改回默认的 DepthPageTransformer。
所以基本上我想在运行时应用 pageTransformers。任何帮助表示赞赏。
这是我的代码:
//sets intial page transformer
viewPager.setPageTransformer(false,new DepthPageTransformer());
现在,当我点击其 onCLick 中的按钮时,我有:
//sets vertical page transformer
viewPager.setPageTransformer(false,new VerticalPageTransformer());
viewPager.setCurrentItem(viewPager.getCurrentItem() + 1);
然后在我的 onPageSelected() 中,我将其设置回初始值
@Override
public void onPageSelected(int position) {
viewPager.setPageTransformer(false,new DepthPageTransformer());
}
这听起来很容易和正确,但页面转换一点也不顺畅。他们行为怪异。页面有时会缩小。页面变化如此之快,以至于人们甚至看不到转换。
为@Mimmo 编辑:附加更改