zoukankan      html  css  js  c++  java
  • Android动画

    动画分为三种:补间动画,属性动画,帧动画

    先介绍前两种

      特点
    补间动画 不会改变控件的真实坐标
    属性动画 会改变控件的真实坐标
     帧动画  最原始的动画(靠频率快实现)

    1 补间动画(Alpha,Rotate,Scale,Translate)

         AlphaAnimation alphaAnimation=new AlphaAnimation(0,1);
            alphaAnimation.setDuration(3000);
            rl.startAnimation(alphaAnimation);

    上面是一段简单的补间动画(透明属性的应用)

    也可以用xml来定义的动画

    2 属性动画

      下面即是一段简单的属性动画

         ObjectAnimator oa1=ObjectAnimator.ofFloat(ll_now,"translationY",ll_now.getY(),ll_now.getY()-scrollHeight);
            ObjectAnimator oa2=ObjectAnimator.ofFloat(ll_now,"translationY",ll_now.getY(),ll_now.getY()-scrollHeight);
            AnimatorSet animatorSet=new AnimatorSet();
            animatorSet.playTogether(oa1,oa1);
            animatorSet.setDuration(duration);
            animatorSet.start();

    ObjectAnimator是由自己的静态方法生成的,然后就是多个属性动画要用AnimatorSet 这点要注意和Animation的补间动画分开。

    属性动画的异常常见

     Circular dependencies cannot exist in AnimatorSet   //这个是由于在AnimatorSet 中一次性加入了重复的属性动画对象导致的

    采坑问题

    在Android 3.0中出现   error @android:windowEnterAnimation not found

      解决方法有2个

    第一个:在Project/gradle.properties中添加 android.enableAapt2=false

    第二个:去掉android前面的@就可以了

    这个博客挺好的https://www.jianshu.com/p/420629118c10

     

    3 帧动画

  • 相关阅读:
    Django--模型层进阶
    Django--模板层
    对自己的博客园主题稍作修改
    集群中Session共享解决方案分析
    【检测工具】keepalived安装及配置
    跨域问题简单分析
    Linux设置静态IP后出现的几种问题
    Linux上安装ElasticSearch及遇到的问题
    Linux上安装JDK1.8,tomcat9,以及mysql8的步骤
    归并排序分析
  • 原文地址:https://www.cnblogs.com/zzl521/p/8870035.html
Copyright © 2011-2022 走看看