常用viewpager动画效果实现
来源:互联网 发布:webclient没执行js 编辑:程序博客网 时间:2024/06/03 21:27
/** * position参数指明给定页面相对于屏幕中心的位置。它是一个动态属性,会随着页面的滚动而改变。当一个页面填充整个屏幕是,它的值是0, * 当一个页面刚刚离开屏幕的右边时 * ,它的值是1。当两个也页面分别滚动到一半时,其中一个页面的位置是-0.5,另一个页面的位置是0.5。基于屏幕上页面的位置 * ,通过使用诸如setAlpha * ()、setTranslationX()、或setScaleY()方法来设置页面的属性,来创建自定义的滑动动画。 */
mViewPager.setPageTransformer(true, new Depthformer()); // 中心旋转效果 public class CenterCircleformer implements ViewPager.PageTransformer { @Override public void transformPage(View view, float position) { if (position < 0 && position > -1) { view.setScaleX(1 + position); view.setAlpha(1 + position); view.setTranslationX(-view.getMeasuredWidth() * position); } else if (position < 1 && position > 0) { view.setScaleX(1 - position); view.setAlpha(1 - position); view.setTranslationX(-view.getMeasuredWidth() * position); } } } // 压缩效果 public class Compressformer implements ViewPager.PageTransformer { @Override public void transformPage(View view, float position) { if (position < 0 && position > -1) { view.setScaleX(1 + position); view.setAlpha(1 + position); view.setTranslationX( - view.getMeasuredWidth()* position/2); } else if (position < 1 && position > 0) { view.setScaleX(1 - position); view.setAlpha(1 - position); view.setTranslationX( - view.getMeasuredWidth()*position/2); } } } // 立方体 public class CubeRotateformer implements ViewPager.PageTransformer { @Override public void transformPage(View view, float position) { if (position < 0 && position > -1) { view.setPivotX(view.getMeasuredWidth()); view.setPivotY(view.getMeasuredHeight() * 0.5f); view.setRotationY(90f * position); } else if (position < 1 && position > 0) { view.setPivotX(0); view.setPivotY(view.getMeasuredHeight() * 0.5f); view.setRotationY(90f * position); } } } // 由下往上显示 public class Depthformer implements ViewPager.PageTransformer { @Override public void transformPage(View view, float position) { if (position < 1 && position > 0) { view.setScaleX(1 - position/4); view.setScaleY(1 - position/4); view.setAlpha(1 - position); view.setTranslationX(-view.getMeasuredWidth()*position/2); } } }
0 0
- 常用viewpager动画效果实现
- viewpager + fragment实现动画效果
- ViewPager滑动动画效果实现
- viewpager 实现画廊效果,带动画!
- Android 中ViewPager 实现动画效果切换
- ViewPager+属性动画 实现炫酷视差动画效果
- Android ViewPager 动画效果
- ViewPager的动画效果
- ViewPager动画效果
- ViewPager 添加动画效果
- ViewPager添加动画效果
- 实现页面切换(动画效果实现,不用ViewPager)
- ViewPager实现多页面滑动切换和动画效果
- ViewPager的实现过程及其多种方式的动画效果
- 实现Viewpager切换界面导航栏水波纹动画效果
- android ViewPager动画的实现原理及效果
- ViewPager的PageTransformer 实现各种Page变换动画效果分析
- android用ViewPager实现带有动画效果的页面切换
- 在gridview实现横竖分割线
- Xcode快速入门-2-第一个APP - Hello World
- UItbleview 设置滑动范围
- 测试博文发布问题
- lldb命令常用
- 常用viewpager动画效果实现
- android导航栏隐藏与浮现
- 简化select_tag/form
- [转] git使用初涉
- Hibernate4.3.6+struts2 2.3.16+Spring4.1整合
- iOS:字符串过滤掉非法字符
- Set, List And Map
- SPRING中的线程池ThreadPoolTaskExecutor
- 九度王道考研机试真题 2011-5吉大1109:连通图