贴一个定义android animation的应用实例 收藏
此文件名为myanimation.xml 位于 res/anim文件夹下:
具体释义已在文件中解释。
- <?xml version="1.0" encoding="UTF-8"?>
- <set xmlns:android="http://schemas.android.com/apk/res/android">
- <!--
- Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效
- Alpha:渐变透明度动画效果
- Scale:渐变尺寸伸缩动画效果
- Translate:画面转换位置移动动画效果
- Rotate:画面旋转动画效果
- Tween Animation 通用属性[类型] 功能
- Duration[long] 属性为动画持续时间 时间以毫秒为单位
- fillAfter [boolean] 当设置为true ,该动画转化在动画结束后被应用
- fillBefore[boolean] 当设置为true ,该动画转化在动画开始前被应用
- interpolator 指定一个动画的插入器 有一些常见的插入器
- accelerate_decelerate_interpolator
- 加速-减速 动画插入器
- accelerate_interpolator
- 加速-动画插入器
- decelerate_interpolator
- 减速- 动画插入器
- 其他的属于特定的动画效果
- repeatCount[int] 动画的重复次数
- RepeatMode[int] 定义重复的行为 1:重新开始 2:plays backward
- startOffset[long] 动画之间的时间间隔,从上次动画停多少时间开始执行下个动画
- zAdjustment[int] 定义动画的Z Order的改变 0:保持Z Order不变
- 1:保持在最上层
- -1:保持在最下层
- -->
- <!--
- 透明控制动画
- -->
- <alpha
- android:fromAlpha="0.1"
- android:toAlpha="1.0"
- android:duration="3000"
- />
- <!-- 尺寸伸缩动画效果 scale
- 属性:interpolator 指定一个动画的插入器
- 有三种动画插入器:
- accelerate_decelerate_interpolator 加速-减速 动画插入器
- accelerate_interpolator 加速-动画插入器
- decelerate_interpolator 减速- 动画插入器
- 其他的属于特定的动画效果
- fromXScale 属性为动画起始时 X坐标上的伸缩尺寸
- toXScale 属性为动画结束时 X坐标上的伸缩尺寸
- fromYScale 属性为动画起始时Y坐标上的伸缩尺寸
- toYScale 属性为动画结束时Y坐标上的伸缩尺寸
- 说明:
- 以上四种属性值
- 0.0表示收缩到没有
- 1.0表示正常无伸缩
- 值小于1.0表示收缩
- 值大于1.0表示放大
- pivotX 属性为动画相对于物件的X坐标的开始位置
- pivotY 属性为动画相对于物件的Y坐标的开始位置
- 说明:
- 以上两个属性值 从0%-100%中取值
- 50%为物件的X或Y方向坐标上的中点位置
- 长整型值:
- duration 属性为动画持续时间
- 说明: 时间以毫秒为单位
- 布尔型值:
- fillAfter 属性 当设置为true ,该动画转化在动画结束后被应用
- -->
- <scale
- android:interpolator="@android:anim/accelerate_decelerate_interpolator"
- android:repeatCount="1"
- android:fromXScale="0.5"
- android:fromYScale="0.5"
- android:toXScale="1.4"
- android:toYScale="1.4"
- android:pivotX="50%"
- android:pivotY="50%"
- android:fillAfter="false"
- android:duration="3000"
- />
- <!--
- 画面转换位置移动动画效果 translate
- fromXDelta toXDelta 为动画、结束起始时 X坐标上的位置
- fromYDelta toYDelta 为动画、结束起始时 Y坐标上的位置
- -->
- <translate
- android:repeatCount="2"
- android:fromXDelta="-30"
- android:fromYDelta="-30"
- android:toXDelta="-80"
- android:toYDelta="200"
- android:duration="3000"
- />
- <!--
- 画面转移旋转动画效果 rotate
- fromDegrees 为动画起始时物件的角度 说明
- 当角度为负数——表示逆时针旋转
- 当角度为正数——表示顺时针旋转
- (负数from——to正数:顺时针旋转)
- (负数from——to负数:逆时针旋转)
- (正数from——to正数:顺时针旋转)
- (正数from——to负数:逆时针旋转)
- toDegrees 属性为动画结束时物件旋转的角度 可以大于360度
- pivotX
- pivotY 为动画相对于物件的X、Y坐标的开始位 说明:以上两个属性值 从0%-100%中取值
- 50%为物件的X或Y方向坐标上的中点位置
- -->
- <rotate
- android:interpolator="@android:anim/accelerate_interpolator"
- android:repeatCount="2"
- android:fromDegrees="0"
- android:toDegrees="+270"
- android:pivotX="50%"
- android:pivotY="50%"
- android:duration="3000"
- />
- </set>
用法:
加入把此动画定义用到一个TextView上,那么需要做的工作很简单:
- Animation mAnimation ;
- mAnimation = AnimationUtils.loadAnimation(this, R.anim.anim);
- TextView text = (TextView)findViewById(R.id.textview00);
- text.setAnimation(mAnimation);
此处要注意一点:
要用AnimationDrawable 的start()方法来启动动画,不管动画是否完毕,想要第二次启动动画一定要先调用它的stop()方法才可以再次启动动画。
fillBefore是指动画结束时画面停留在第一帧,fillAfter是指动画结束是画面停留在最后一帧。最关键的问题是,这2个参数不能在xml中设置,这是没有用的。必须在java代码中设置。比如
setFillAfter(true);
setFillBefore(false);
这样动画结束时,停在最后一帧。
发表于 @ 2009年11月05日 09:09:00 | 评论( 0 ) | 举报| 收藏
相关推荐
`Android Animation Demo`是一个实例,它展示了如何在Android应用中实现各种动画效果。这篇详细讲解将围绕标题和描述中的知识点展开,包括Tween Animation(补间动画)和Frame Animation(帧动画),帮助开发者理解...
本文将深入探讨Android中的`Animation`类及其简单应用实例,旨在帮助初学者理解如何使用各种动画方法。 一、Animation概述 Android提供了两种主要类型的动画:补间动画(Tween Animation)和帧动画(Frame ...
Android属性动画(Property Animation)是Android 3.0(API级别11)引入的一个强大功能,它极大地扩展了Android的动画系统,使得开发者能够实现更丰富、更动态的视觉效果。与视图动画(View Animation)不同,属性...
在Activity或View中使用Frame动画,首先需要实例化一个`AnimationDrawable`对象,并将其设置为某个View的背景。然后调用`start()`方法启动动画: ```java ImageView imageView = findViewById(R.id.imageView); ...
本实例"android animation实例"是由开发者Guolin创建的,旨在帮助学习者深入理解并掌握Android中的动画机制。这个实例项目名为"guolin_AnimationTest",包含了各种动画类型的示例,非常适合初学者进行实践操作。 ...
首先,创建一个`AnimationDrawable`实例,然后为它添加帧资源,通过`addFrame()`方法设定每个帧的图片资源和持续时间。接着,将`AnimationDrawable`设置为某个View(如ImageView)的背景。最后,通过调用`start()`...
在Android开发中,动画(Animation)是提升用户体验和视觉效果的重要手段。这篇博客“2011.10.18——— android 自定义Animation”可能详细探讨了如何在Android平台上自定义各种动画效果,包括但不限于平移、旋转、...
"Android Animation Test"是一个实例,它深入探讨了Android系统中的动画机制,帮助开发者了解并掌握如何在应用中实现各种吸引人的视觉效果。这个例子可能包括平移、旋转、缩放、淡入淡出等多种基本动画类型,以及更...
`android animation demo`是一个实例,展示了如何在Android应用程序中实现各种动画效果。这个项目可能包含了多种动画类型,如视图动画(View Animation)、属性动画(Property Animation)以及过渡动画(Transition ...
本文将深入探讨Android中的两种主要动画类型:Tween Animation(补间动画)和Activity Animation,并通过实例讲解如何实现它们。 **1. Tween Animation(补间动画)** 补间动画主要用于对象属性的变化,如大小、...
TweenAnimation是Android SDK中提供的一种基础动画类型,它基于帧动画(Frame Animation)的概念,通过平移、旋转、缩放和改变透明度等属性来实现对象的变化效果。让我们深入探索Android TweenAnimation的源码,了解...
"Android animation图片移动效果.rar"这个压缩包文件提供了一个关于如何在Android应用中实现图片平移移动效果的源码示例。这个示例对于初学者和有经验的开发者来说,都是一个很好的学习资源,可以帮助他们深入理解...
在本文中,我们将深入探讨“Animation”这一关键概念,并通过具体的实例来阐述其工作原理和应用。 动画是通过连续播放一系列帧来创造运动错觉的技术。在IT行业中,特别是针对用户界面(UI)的动画,它能增强用户...
`AnimationDemo01`通常包含一个简单的示例,演示如何使用Android的动画功能。可能包含以下内容: 1. 创建一个`ObjectAnimator`实例,改变ImageView的旋转角度。 2. 使用`ValueAnimator`实现渐变颜色变化的动画。 3....
例如,在压缩包中的`animation_test`可能包含了一个示例项目,演示了如何创建并应用补间动画。通过查看这个项目,我们可以学习如何在代码中动态创建和应用动画,以及在XML布局文件中预定义动画。这有助于开发者更好...
在Android应用开发中,为App设计一个引人注目的Logo动画可以极大地提升用户体验,增加产品的辨识度。本文将深入探讨如何在Android平台上实现一个App的Logo动画效果,结合提供的"QccLogo-Animation-master"项目,我们...
例如,以下XML定义了一个渐显动画: ```xml <alpha xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" android:fromAlpha="0.0" android:toAlpha="1.0" /> ``` 在Java代码中...
总的来说,"android-slidingactivity"项目是Android开发者学习和实现滑动动画的一个实践案例,通过深入研究和理解其源码,可以提升开发者在UI动画设计方面的能力,为应用程序带来更加流畅和生动的交互体验。
在 Android 开心消消乐代码实例中,布局设计是一个非常重要的方面。游戏的布局主要由 XML 文件定义,XML 文件中定义了游戏的布局结构,包括游戏的背景、按钮、文字等元素。在游戏中,我们使用了 TableLayout 和 ...