ViewPager 3D翻转

来源:互联网 发布:淘宝卖家怎么上架商品 编辑:程序博客网 时间:2024/06/05 02:19

利用PageTransformer实现ViewPager3D翻转

 mDensity = getResources().getDisplayMetrics().density; mViewPager.setOffscreenPageLimit(2);//缓存两页,此处必须设置 mViewPager.setPageTransformer(true,newFlipPagerTransformer());//设置3D翻转 效果 mViewPager.setAdapter(mMainPagerAdapter);

实现PageTransformer接口:

private class FlipPagerTransformer implements ViewPager.PageTransformer{        @Override        public void transformPage(View page, float position) {            if(position <= 0 && position >= -1){                page.setPivotX(page.getMeasuredWidth());            }else if(position <= 1 && position >= -1){                page.setPivotX(0);            }            page.setPivotY(page.getMeasuredHeight() * 0.5f);            if(mDensity <= 1.5f){                page.setRotationY(position * 90f);            }else if(1.5f < mDensity && mDensity <= 2.0f){                page.setRotationY(position * 75f);            }else if(2.0f < mDensity){                page.setRotationY(position * 60f);            }        }    }
0 0
原创粉丝点击