Есть пейджер просмотра, и используется DepthPageTransformer.
mViewPager.setPageTransformer(false, new DepthPageTransformer());
Код DepthPageTransformer:
public class DepthPageTransformer implements PageTransformer {
private static float MIN_SCALE = 0.5f;
@Override
public void transformPage(View view, float position) {
/**
* [-1,0]Use the default slide transition when moving to the left page
* (0,1] Use the default slide transition when moving to the right page
* (1,+Infinity] This page is way off-screen to the right.
* [-Infinity,-1) This page is way off-screen to the left.
*/
int pageWidth = view.getWidth();
if (position > 1){
view.setAlpha(0);
view.setTranslationX(0);
}
else if (position > 0){
view.setAlpha(1);
view.setTranslationX(0);
view.setScaleX(1);
view.setScaleY(1);
}
else if (position >= -1){
view.setAlpha(1);
view.setTranslationX(pageWidth * -position);
// Scale the page down (between MIN_SCALE and 1)
float scaleFactor = MIN_SCALE + (1 - MIN_SCALE)
* (1 - Math.abs(position));
view.setScaleX(scaleFactor);
view.setScaleY(scaleFactor);
}
else{
view.setAlpha(0);
view.setScaleX(1);
view.setScaleY(1);
}
}
}
Что-то произойдет при прокрутке пейджера: весь фрагмент пропал. Или показан только задний фрагмент и масштаб 0,5, а переднего фрагмента нет, поэтому мы видим небольшой фрагмент на экране.