在 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 文件,具体如下:

 
     
      
   
      
    xmlns:android="http://schemas.android.com/apk/res/android">  
      
           
      
                 android:fromXDelta="0"              // 设置动画开始时 x 坐标的位置  
     
                 android:toXDelta="-100%p" // 设置动画结束时 x 坐标的位置  
    
                 android:duration="300"        // 设置动画持续的时间 300 毫秒  
     
          >  
     
           
     
         
     
                 android:fromAlpha="1.0"            // 设置动画开始时的透明度   1.0 代表不透明  
     
                 android:toAlpha="0.0"   // 设置动画开始时的透明度   0.0 表示完全透明  
     
                 android:duration="300" // 设置动画持续的时间 300 毫秒  
     
          />  
     
         
     
             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" // 设置动画持续的时间  
     
   />  
     
       
     
           android:interpolator=            // 设置动画出入器  
     
   "@android:anim/accelerate_decelerate_interpolator"  
     
           android:fromDegrees="0"     // 设置动画开始时的角度  
     
           android:toDegrees="+350"           // 设置动画结束时的旋转角度  
    
           android:pivotX="50%"         // 设置动画相对于控件的 x 坐标的位置  
     
           android:pivotY="50%"         // 设置动画相对于控件的 y 坐标的位置  
     
           android:duration="3000"       // 设置动画持续的时间  
     
       />  
     
     
 
 
  利用 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中xml设置Animation动画效果详解的更多相关文章

  1. Android 中各种权限深入体验及详解

    Android 中各种权限深入体验及详解 分类: Android2012-07-15 19:27 2822人阅读 评论(0) 收藏 举报 androidpermissionsinstallersyst ...

  2. android中设置Animation 动画效果

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

  3. Android 吸入动画效果详解

    1,背景 吸入(Inhale)效果,最初我是在iOS上面看到的,它是在Note程序中,用户可能添加了一页记录,在做删除时,它的删除效果是:这一页内容吸入到一个垃圾框的图标里面.请看下图所示: ==== ...

  4. 动画_ _ Android应用开发之所有动画使用详解

    转载: http://blog.csdn.net/yanbober/article/details/46481171 题外话:有段时间没有更新博客了,这篇文章也是之前写了一半一直放在草稿箱,今天抽空把 ...

  5. Android应用开发之所有动画使用详解

    题外话:有段时间没有更新博客了,这篇文章也是之前写了一半一直放在草稿箱,今天抽空把剩余的补上的.消失的这段时间真的好忙,节奏一下子有些适应不过来,早晨七点四十就得醒来,晚上九点四十才准备下班,好像最近 ...

  6. Android中Serializable和Parcelable序列化对象详解

    学习内容: 1.序列化的目的 2.Android中序列化的两种方式 3.Parcelable与Serializable的性能比较 4.Android中如何使用Parcelable进行序列化操作 5.P ...

  7. android中3种实现动画效果的方法

    3中实现动画的方法:ImageView imgView = (ImageView)findViewById(R.id.imageView_logo); //第一种动画方法,使用AlphaAnimati ...

  8. Android中的ImageView的scaleType属性详解

    ImageView的Scaletype决定了图片在View上显示时的样子,如进行何种比例的缩放,及显示图片的整体还是部分,等等. 设置的方式包括: 1. 在layout xml中定义android:s ...

  9. Android中的Coroutine协程原理详解

    前言 协程是一个并发方案.也是一种思想. 传统意义上的协程是单线程的,面对io密集型任务他的内存消耗更少,进而效率高.但是面对计算密集型的任务不如多线程并行运算效率高. 不同的语言对于协程都有不同的实 ...

随机推荐

  1. string xml json格式区别

    string 是一种最普通的储存一串字符的数据格式 xml 是一种可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. 它非常适合万维网传输,提供统一的方 ...

  2. Excel 函数

    Excel 函数: 一.定义: Excel 函数即是预先定义,执行计算.分析等处理数据任务的特殊公式. 二.结构: 1.单一结构 =函数名(参数1,参数2,参数3.....) 示例:=sum(A3:A ...

  3. 2015-09-17 001 存储过程数据操作类 H_data_Helper

    using System;using System.Data;using System.Configuration;using System.Linq;using System.Web;using S ...

  4. River Hopscotch(二分POJ3258)

    River Hopscotch Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 9263 Accepted: 3994 Descr ...

  5. 人活着系列之平方数 分类: sdutOJ 2015-06-22 17:10 7人阅读 评论(0) 收藏

    人活着系列之平方数 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 偶然和必然?命运与意志?生与死?理性与情感?价值与非价值?在&quo ...

  6. 链表——PowerShell版

    链表是由一系列节点串连起来组成的,每一个节点包括数值部分和指针部分,上一节点的指针部分指向下一节点的数值部分所在的位置. 在C语言中我们有两种方式来定义链表—— 1.定义结构体:来表示链表中的节点,节 ...

  7. 非在线方式搭建Android开发环境

    android 环境搭建 http://jingyan.baidu.com/article/90895e0fba1b5664ed6b0b7e.html android开发环境的搭建(解决sdk下载更新 ...

  8. Android 内部存储和外部存储

    应用程序的一些配置文件需要存储在手机上.一般分为内部存储和SD卡存储. 一. 内部存储 ,以 FileOutputStream File file = new File(getFilesDir(),& ...

  9. 【Unity3D游戏开发】基础知识之Tags和Layers (三二)[转]

    Tags和Layers分别表示是Unity引擎里面的标签和层,他们都是用来对GameObject进行标识的属性,Tags常用于单个GameObject,Layers常用于一组的GameObject.添 ...

  10. Writing Text File From A Tabular Block In Oracle Forms

    The example given below for writing text file or CSV using Text_IO package from a tabular block in O ...