android中设置Animation 动画效果

时间:2021-08-07 10:09:20

在 Android 中, Animation 动画效果的实现可以通过两种方式进行实现,一种是 tweened animation 渐变动画,另一种是 frame
by frame animation 画面转换动画,接下来eoe进行讲解。

tweened animation
渐变动画有以下两种类型:

1.alpha   渐变透明度动画效果

2.scale   渐变尺寸伸缩动画效果

frame
by frame animation
画面转换动画有以下两种类型:

1.translate  画面转换位置移动动画效果

2.rotate   
画面转移旋转动画效果

在 res 文件夹下新建一个 anim 的文件夹,并在其中建立一个 animation.xml 文件,具体如下:

    <?xml version="1.0" encoding="utf-8"?>  

    <set  

    xmlns:android="http://schemas.android.com/apk/res/android">  

           <translate  

                 android:fromXDelta="0"              // 设置动画开始时 x 坐标的位置  

                 android:toXDelta="-100%p" // 设置动画结束时 x 坐标的位置  

                 android:duration="300"        // 设置动画持续的时间 300 毫秒  

          >  

          </translate>  

          <alpha  

                 android:fromAlpha="1.0"            // 设置动画开始时的透明度   1.0 代表不透明  

                 android:toAlpha="0.0"   // 设置动画开始时的透明度   0.0 表示完全透明  

                 android:duration="300" // 设置动画持续的时间 300 毫秒  

          />  

          <scale  

             android:interpolator="              // 设置动画出入器  

   @android:anim/accelerate_decelerate_interpolator"  

             android:fromXScale="0.0"       // 设置动画开始时 x 坐标上的伸缩长度  

             android:toXScale="1.4"            // 设置动画结束时 x 坐标上的伸缩长度  

             android:fromYScale="0.0"       // 设置动画开始时 y 坐标上的伸缩长度  

             android:toYScale="1.4"     // 设置动画开始时 y 坐标上的伸缩长度  

             android:pivotX="50%"      // 设置动画相对于控件的 x 坐标的位置  

             android:pivotY="50%"      // 设置动画相对于控件的 y 坐标的位置  

             android:fillAfter="false"    // 该动画转化在动画结束前开始应用  

             android:duration="700" // 设置动画持续的时间  

   />  

       <rotate  

           android:interpolator=            // 设置动画出入器  

   "@android:anim/accelerate_decelerate_interpolator"  

           android:fromDegrees="0"     // 设置动画开始时的角度  

           android:toDegrees="+350"           // 设置动画结束时的旋转角度  

           android:pivotX="50%"         // 设置动画相对于控件的 x 坐标的位置  

           android:pivotY="50%"         // 设置动画相对于控件的 y 坐标的位置  

           android:duration="3000"       // 设置动画持续的时间  

       />  

   </set>  

利用 AnimationUtils.loadAnimation 将动画加载。

    Animation animation;  

    animation=AnimationUtils.loadAnimation(this, R.anim.animation);  

    // 然后再想要实现动画效果的控件上通过使用 startAnimation() 方法进行添加。  

    // 编写动画对象,并且获取自定应的动画样式  

    animation=AnimationUtils.loadAnimation(this, R.anim.animation);  

           spinner.setOnTouchListener(new Spinner.OnTouchListener() {  

                        @Override  

                        public boolean onTouch(View v, MotionEvent event) {  

                               // TODO Auto-generated method stub  

                               // 运行动画 animation  

                               v.startAnimation(animation);  

                               // 将 spinner 的可见性设置为不可见状态  

                               v.setVisibility(View.INVISIBLE);  

                               return false;  

                        }  

                 });  

android中设置Animation 动画效果的更多相关文章

  1. Android中xml设置Animation动画效果详解

    在 Android 中, Animation 动画效果的实现可以通过两种方式进行实现,一种是 tweened animation 渐变动画,另一种是 frame by frame animation ...

  2. 【Android 基础】Animation 动画介绍和实现

    在前面PopupWindow 实现显示仿腾讯新闻底部弹出菜单有用到Animation动画效果来实现菜单的显示和隐藏,本文就来介绍下吧. 1.Animation 动画类型 Android的animati ...

  3. Android中设置TextView的颜色setTextColor

    tv.setTextColor(Color.parseColor("#FFFFFF")); tv.setTextColor(Color.WHITE); tv.setTextColo ...

  4. Android中实现ListView圆角效果&lbrack;转&rsqb;

    本文演示如何Android中实现ListView圆角效果. 无论是网站,还是APP,人们都爱看一些新颖的视图效果.直角看多了,就想看看圆角,这几年刮起了一阵阵的圆角设计风:CSS新标准纳入圆角元素,特 ...

  5. 模仿百度首页&OpenCurlyDoubleQuote;元宵节汤圆”动图,并实现360&&num;176&semi;不停旋转(CSS3的animation动画效果)

    模仿百度首页“元宵节汤圆”动图,并实现360°不停旋转(CSS3的animation动画效果) 效果图: 切图地址: https://ss1.bdstatic.com/5eN1bjq8AAUYm2zg ...

  6. jQuery中的渐变动画效果

    jQuery中的渐变动画效果jQuery中的渐变动画效果

  7. 【转】Android中设置TextView的颜色setTextColor--代码中设置字体颜色

    原文网址:http://www.cnblogs.com/myphoebe/archive/2012/01/06/2314728.html android中设置TextView的颜色有方法setText ...

  8. 【转】Android中设置TextView的颜色setTextColor

    原文网址:http://www.cnblogs.com/myphoebe/archive/2012/01/06/2314728.html android中设置TextView的颜色有方法setText ...

  9. Android Acitivy切换平移动画效果实现

    1.在anim目录下新建anim文件夹,新建tran_in.xml和tran_out.xml分别表示下一页切换进入,和本页切换出去. 即in表示下一页向左平移,out表示同样向左平移至消失. tran ...

随机推荐

  1. php 与 java 生成时间戳的区别

    最近服务器有java却换到php环境,生成的时间戳转换成时间格式的出现异常,查询资料得知: PHP 的 time() 函数返回的结果是 Unix 时间戳,值的单位是秒:如:1463564861 Jav ...

  2. 获取在线APP的素材图片

    1.打开iTunes,搜索并下载APP 2.打开下载的APP的路径 4.对ipa包进行解压 5.找到app,右键"显示包内容"进行查看 6.结果

  3. hdu5322 Hope

    设dp[n]为n个数字排列时候的答案,那么可以得到dp方程 dp[n]=Σdp[n-i]*c(n-1,i-1)*(i-1)!*i^2(1<=i<=n) 然后上式可以化成卷积形式,分治FFT ...

  4. (poj)1806 Currency Exchange

    题目链接:http://poj.org/problem?id=1860 Description Several currency exchange points are working in our ...

  5. sqlcmd命令导入大容量的SQL本地文件至SQL server 2008

    由于开发工作在测试环境,需要构造测试数据,经常遇到100+M大小的*.sql文件需要导入到测试库的情况,由于SSMS里对导入文件的大小有限制: 会出现上图的报错!上网查了下,超过80M的文件是不能在S ...

  6. Google Guice学习

    学习动力:公司项目使用 官方文档:https://github.com/google/guice/wiki/Motivation 学习阶段:入门 主要部份: 简介 Bindings方式 Scopes设 ...

  7. uva1354 枚举二叉树

    这题很难,这几天一直在想这题,最后看了汝佳大哥的代码才明白.贴上代码 // UVa1354 Mobile Computing // Rujia Liu #include<cstdio> # ...

  8. Android 异步请求通用类

    package com.example.demo1; import java.util.EventListener; public interface MyAsyncTaskListener exte ...

  9. swift 学习- 17 -- 析构器

    // 析构器 只适用与 类类型, 当一个类的实例被释放之前, 析构器会被立即调用, 析构器用关键字 deinit 来标示, 类似于构造器要用 init 来标示 // 析构过程原理 // Swift 会 ...

  10. 给OkHttp Client添加socks代理

    Okhttp的使用没有httpClient广泛,网上关于Okhttp设置代理的方法很少,这篇文章完整介绍了需要注意的方方面面. 上一篇博客中介绍了socks代理的入口是创建java.net.Socke ...