炫酷的ViewPager翻页动画

    xiaoxiao2021-03-25  48

    先看效果图

    直接拿去就能用,和普通的ViewPager一样的用法。

    public class ReaderViewPager extends ViewPager { public ReaderViewPager(Context context) { this(context, null); } public ReaderViewPager(Context context, AttributeSet attrs) { super(context, attrs); setReadEffect(); } @SuppressLint("ClickableViewAccessibility") public void setReadEffect() { setPageTransformer(true, new PageTransformer() { private float MIN_SCALE = 0.5f;//初始 @Override public void transformPage(View view, float position) { // TODO Auto-generated method stub int pageWidth = view.getWidth(); if (position <= 0) { view.setTranslationX(0); view.setScaleX(1); view.setScaleY(1); } else if (position <= 1) { // (0,1] float SCALE = 0.5f - position / 2; view.setScaleX(MIN_SCALE + SCALE); view.setScaleY(MIN_SCALE + SCALE); view.setAlpha(MIN_SCALE + SCALE); view.setTranslationX(pageWidth * -position); } else { view.setTranslationX(pageWidth); } } }); //默认预加载3 setOffscreenPageLimit(3); //屏蔽多点触摸 setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub if (event.getActionMasked() == MotionEvent.ACTION_POINTER_DOWN) { return true; } else { return false; } } }); } }
    转载请注明原文地址: https://ju.6miu.com/read-27385.html

    最新回复(0)