在 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圆角效果[转]

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

  5. 模仿百度首页“元宵节汤圆”动图,并实现360°不停旋转(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和CS的引用传值

    PHP的引用传值 function change_value($num){ $num+=2; } $age = 3; change_value(&$age); echo $age; CS的引用 ...

  2. Git之基本命令

    先介绍一下Git: Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理.在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中.目前, ...

  3. Js中把JSON字符串转换为JSON对象(eval()、new Function())

    在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 第一种解析方式:使用eval函数来解析,并且使用j ...

  4. node笔记——gulp修改静态文件的名字

    cmd小技巧: 1.换到下级或同等级目录 D: 2.换到上级目录 cd.. node 包管理器小技巧[以gulp为例] npm install --save-dev gulp gulp-concat ...

  5. 济南学习 Day 3 T1 am

    NP(np)Time Limit:1000ms Memory Limit:64MB题目描述LYK 喜欢研究一些比较困难的问题,比如 np 问题.这次它又遇到一个棘手的 np 问题.问题是这个样子的:有 ...

  6. 【风马一族_Android】第4章Android常用基本控件

    第4章Android常用基本控件 控件是Android用户界面中的一个个组成元素,在介绍它们之前,读者必须了解所有控件的父类View(视图),它好比一个盛放控件的容器. 4.1View类概述 对于一个 ...

  7. brewhome - 第三方包管理工具

    最近对移动开发感兴趣,于是乎有了相当正式的理由购买了一台macbook pro 13. 我虽然以前没有使用过mac os,但是上手却很快,这大概跟我最近几年一直在使用linux系统有关吧.我平时上班时 ...

  8. CentOS学习笔记--程序管理

    程序管理 一个程序被加载到内存当中运行,那么在内存内的那个数据就被称为程序(process).程序是操作系统上非常重要的概念, 所有系统上面跑的数据都会以程序的型态存在.那么系统的程序有哪些状态?不同 ...

  9. Materialized Views 物化视图 -基础篇

    Materialized Views 物化视图 -基础篇 http://blog.csdn.net/elimago/article/details/5404019

  10. js----DOM的三大节点及部分用法

    DOM有三种节点:元素节点.属性节点.文本节点. 一.用nodeType可以检测节点的类型 节点类型 nodeType属性值 元素节点 1 属性节点 2 文本节点 3 这样方便在js中对各个节点进行操 ...