Closed BigSweet closed 10 months ago
fix: DepthPageTransformer的if (position <= 0)条件中的setVisibility都去掉,一切正常。 代码如下
public class NewDepthPageTransformer extends BasePageTransformer { private static final float DEFAULT_MIN_SCALE = 0.75f; private float mMinScale = DEFAULT_MIN_SCALE; public NewDepthPageTransformer() { } public NewDepthPageTransformer(float minScale) { this.mMinScale = minScale; } public void transformPage(View view, float position) { int pageWidth = view.getWidth(); if (position < -1) { // [-Infinity,-1) // This page is way off-screen to the left. view.setAlpha(0f); } else if (position <= 0) { // [-1,0] // Use the default slide transition when moving to the left page view.setAlpha(1f); view.setTranslationX(0f); float scaleFactor = mMinScale + (1 - mMinScale) * (1 - Math.abs(position)); view.setScaleX(scaleFactor); view.setScaleY(scaleFactor); } else if (position <= 1) { // (0,1] //进入页面时 // view.setVisibility(View.VISIBLE); // Fade the page out. view.setAlpha(1 - position); // Counteract the default slide transition view.setTranslationX(pageWidth * -position); // Scale the page down (between MIN_SCALE and 1) float scaleFactor = mMinScale + (1 - mMinScale) * (1 - Math.abs(position)); view.setScaleX(scaleFactor); view.setScaleY(scaleFactor); //退出页面时 if (position == 1) { // view.setVisibility(View.INVISIBLE); } } else { // (1,+Infinity] // This page is way off-screen to the right. view.setAlpha(0f); } } }
fix: DepthPageTransformer的if (position <= 0)条件中的setVisibility都去掉,一切正常。 代码如下