android viewpager 切换动画
来源:互联网 发布:员工数据保密协议 编辑:程序博客网 时间:2024/05/16 15:52
android viewpager 切换动画
1.默认效果
public class CubeTransformer implements PageTransformer {
private static float MIN_SCALE = 0.85f;
private static float MIN_ALPHA = 0.5f;
@SuppressLint("NewApi")
@Override
public void transformPage(View arg0, float arg1) {
int pageWidth=arg0.getWidth();
int pageHeight=arg0.getHeight();
if(arg1<-1){
arg0.setAlpha(0);
}else if(arg1<=1){
float scaleFactor=Math.max(MIN_SCALE,1-Math.abs(arg1));
float vertMargin=pageHeight*(1 - scaleFactor)/2;
float horzMargin=pageWidth*(1 - scaleFactor)/2;
if(arg1<0){
arg0.setTranslationX(horzMargin-vertMargin/2);
}else{
arg0.setTranslationX(-horzMargin + vertMargin/2);
}
arg0.setScaleX(scaleFactor);
arg0.setScaleY(scaleFactor);
arg0.setAlpha(MIN_ALPHA+(scaleFactor - MIN_SCALE)/(1 - MIN_SCALE)*(1 - MIN_ALPHA));
}else{
arg0.setAlpha(0);
}
}
}
2.代码中使用
viewpager.setPageTransformer(true, new CubeTransformer());
3.使用jar包 nineoldandroids-2.4.0.jar
public class RotateDownPageTransformer implements PageTransformer {
private static final float ROT_MAX = 20.0f;
private float mRot;
public void transformPage(View view, float position) {
if(position<-1){
ViewHelper.setRotation(view, 0);
}else if(position<=1){//a页滑动至b页 ; a页从 0.0 ~ -1 ;b页从1 ~ 0.0
if(position<0){
mRot=(ROT_MAX * position);
ViewHelper.setPivotX(view, view.getMeasuredWidth() * 0.5f);
ViewHelper.setPivotY(view, view.getMeasuredHeight());
ViewHelper.setRotation(view, mRot);
}else{
mRot=(ROT_MAX*position);
ViewHelper.setPivotX(view, view.getMeasuredWidth() * 0.5f);
ViewHelper.setPivotY(view, view.getMeasuredHeight());
ViewHelper.setRotation(view, mRot);
}
}else{
ViewHelper.setRotation(view, 0);
}
}
}
代码中使用
viewpager.setPageTransformer(true, new RotateDownPageTransformer());
jar包下载地址:http://download.csdn.net/detail/weixin_37730482/9842531
- android viewpager 切换动画
- Android --自定义ViewPager切换动画
- Android ViewPager切换动画PageTransformer
- Android 给ViewPager设置切换动画
- Android viewpager 界面切换动画实现
- Android ViewPager切换的N种动画
- android 为viewPager增加动画切换效果
- Android个性的ViewPager切换动画
- Android-ViewPager( 切换动画实现 , 兼容性实现)
- Android ViewPager Parallax视觉差切换动画
- Android ViewPager切换的N种动画
- Android开发之ViewPager切换动画
- Android ViewPager切换的N种动画
- Android 中ViewPager 实现动画效果切换
- Android ViewPager的切换动画效果PageTransformer
- Android为ViewPager增加切换动画——自定义ViewPager
- Android为ViewPager增加切换动画——自定义ViewPager
- android ViewPager实现 跑马灯切换图片+多种切换动画
- Request_irq和setup_irq的区别
- Promise的理解和react等框架的简单理解笔记
- java中的访问修饰符--public、protected、default、private
- 内存基本处理工具——全局函数
- MyBatis配置文件resultMap可省略的情况
- android viewpager 切换动画
- [Nginx]反向代理Node将3000端口访问转换成80端口
- 图论500题
- oracle数据库 锁表 解锁
- Android 命名规范 (提高代码可维护性)
- nodejs中的session
- 如何获取U盘的状态
- Android RecyclerView适配器的基本工作流程
- 学习笔记:JavaScript-入门篇