1.动画类型
在android中的动画由四种类型组成:
(1)XML中
alpha
|
渐变透明度动画效果
|
scale
|
渐变尺寸伸缩动画效果
|
translate
|
画面转换位置移动动画效果
|
rotate
|
画面转移旋转动画效果
|
(2)JavaCode中
AlphaAnimation
|
渐变透明度动画效果
|
ScaleAnimation
|
渐变尺寸伸缩动画效果
|
TranslateAnimation
|
画面转换位置移动动画效果
|
RotateAnimation
|
画面转移旋转动画效果
|
2.动画效果的定义方法
android动画效果,可以定义在xml文件,也可以定义在java代码中,实现效果是一样的。
(1)在xml中使用方法
① 打开Eclipse,新建Android工程
② 在res目录中新建anim文件夹
③ 在anim目录中新建一个myanim.xml(注意文件名小写)
④ 加入XML的动画代码(具体内容看后面)
<?xml
version= "1.0" encoding= "utf-8" ?>
|
(2)java代码中定义方法
private Animation
myAnimation_Alpha;
|
private Animation
myAnimation_Scale;
|
private Animation
myAnimation_Translate;
|
private Animation
myAnimation_Rotate;
|
myAnimation_Alpha= new AlphaAnimation(0.1f,
1.0f);
|
myAnimation_Scale
= new ScaleAnimation(0.0f,
1.4f, 0.0f, 1.4f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
|
myAnimation_Translate= new TranslateAnimation(30.0f,
-80.0f, 30.0f, 300.0f);
|
myAnimation_Rotate= new RotateAnimation(0.0f,
+350.0f, Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF, 0.5f);
|
3.使用动画效果
(1)使用Xml中动画效果
public static Animation
loadAnimation (Context context, int id)
|
myAnimation=
AnimationUtils.loadAnimation( this ,R.anim.my_action);
|
(2)如果是代码中定义动画效果,就直接调用就行
使用从View父类继承过来的方法startAnimation()来为View或是子类View等等添加一个动画效果
public void startAnimation
(Animation animation)
|
附录:
1.XML定义方法中各个参数属性:
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:保持在最下层 |
4种类型各自特有的节点元素:
<alpha>
表二
|
XML节点 |
功能说明 |
alpha |
渐变透明度动画效果 |
<alpha
android:fromAlpha=”0.1″
android:toAlpha=”1.0″
android:duration=”3000″ /> |
fromAlpha |
属性为动画起始时透明度
|
0.0表示完全透明
1.0表示完全不透明
以上值取0.0-1.0之间的float数据类型的数字 |
toAlpha |
属性为动画结束时透明度 |
<scale>
表三
|
scale |
渐变尺寸伸缩动画效果 |
<scale
android:interpolator= “@android:anim/accelerate_decelerate_interpolator”
android:fromXScale=”0.0″
android:toXScale=”1.4″
android:fromYScale=”0.0″
android:toYScale=”1.4″
android:pivotX=”50%”
android:pivotY=”50%”
android:fillAfter=”false”
android:startOffset=“700”
android:duration=”700″
android:repeatCount=”10″ /> |
fromXScale[float] fromYScale[float] |
为动画起始时,X、Y坐标上的伸缩尺寸 |
0.0表示收缩到没有
1.0表示正常无伸缩
值小于1.0表示收缩
值大于1.0表示放大 |
toXScale [float]
toYScale[float] |
为动画结束时,X、Y坐标上的伸缩尺寸 |
pivotX[float]
pivotY[float] |
为动画相对于物件的X、Y坐标的开始位置 |
属性值说明:从0%-100%中取值,50%为物件的X或Y方向坐标上的中点位置 |
<translate>
表四
|
translate |
画面转换位置移动动画效果 |
<translate
android:fromXDelta=”30″
android:toXDelta=”-80″
android:fromYDelta=”30″
android:toYDelta=”300″
android:duration=”2000″ /> |
fromXDelta
toXDelta |
为动画、结束起始时 X坐标上的位置 |
|
fromYDelta
toYDelta |
为动画、结束起始时 Y坐标上的位置 |
<rotate>
表五
|
rotate |
画面转移旋转动画效果 |
<rotate
android:interpolator=”@android:anim/accelerate_decelerate_interpolator”
android:fromDegrees=”0″
android:toDegrees=”+350″
android:pivotX=”50%”
android:pivotY=”50%”
android:duration=”3000″ /> |
fromDegrees |
为动画起始时物件的角度 |
说明
当角度为负数——表示逆时针旋转
当角度为正数——表示顺时针旋转
(负数from——to正数:顺时针旋转)
(负数from——to负数:逆时针旋转)
(正数from——to正数:顺时针旋转)
(正数from——to负数:逆时针旋转) |
toDegrees |
属性为动画结束时物件旋转的角度 可以大于360度 |
pivotX
pivotY |
为动画相对于物件的X、Y坐标的开始位 |
说明:以上两个属性值 从0%-100%中取值
50%为物件的X或Y方向坐标上的中点位置 |
2.Android SDK动画类 Animation
Tween Animation由4种类型:alpha、scale、translate、roate,在Android SDK中提供了相应的类,Animation类派生出了AlphaAnimation、ScaleAnimation、TranslateAnimation、RotateAnimation分别实现了平移、旋转、改变 Alpha 值等动画,每个子类都在父类的基础上增加了各自独有的属性。

然后可以调用里面的函数设置相应的参数...
摘录自:http://www.eoeandroid.com/thread-653-1-1.html
http://www.moandroid.com/?p=790
分享到:
相关推荐
### Android动画效果编程基础 #### 一、Android动画概述 Android平台提供了丰富的动画支持机制,使得开发者能够轻松地实现各种视觉效果,提升用户体验。在Android中,动画主要分为两大类:**逐帧动画(Frame-by-...
本文将深入探讨Android动画效果编程的基础知识,帮助你理解如何为Android应用添加各种炫酷的视觉效果。 首先,Android提供了两种主要类型的动画:属性动画(Property Animation)和视图动画(View Animation)。...
在Android开发中,动画效果是提升用户体验的关键因素之一。`Animation`类库为开发者提供了丰富的动画功能,使得应用中的视图元素能够展现出各种动态效果。本教程将带你深入理解Android中的动画系统,主要关注`...
核心动画提供了简单易用的动画编程接口,是Cocoa应用程序中实现动画效果的基础。 核心动画框架主要概念包括: 1. 核心动画类,它涵盖了图层类、动画和计时类、布局管理器类以及事务管理类。 - 图层类(Layer ...
OpenGL 使用双缓存技术实现流畅的动画效果,后台缓存用于计算新帧,前台缓存则用于显示,避免闪烁和延迟,确保平滑过渡。 9. **交互技术**: OpenGL 提供丰富的交互接口,让用户能够与三维场景互动,如旋转、缩放...
5. **图形和动画**:介绍2D和3D图形绘制,以及如何创建动态效果,增强用户体验。 6. **资源和依赖属性**:讲解WPF中的资源管理,包括全局和局部资源,以及依赖属性的工作原理。 7. **命令和事件**:介绍如何使用...
### 使用Visual Basic的Move方法实现动画效果 在Visual Basic(简称VB)中,开发者可以通过多种方式来实现动画效果,其中一种简单而有效的方法是利用`Move`方法。本篇文章将详细介绍如何通过`Move`方法结合定时器...
总之,实现C# WinForm窗体的酷狗风格关闭、拉伸和动画效果,需要对WinForm的基础知识、自定义控件以及动画原理有深入理解。通过源代码学习和实践,开发者可以为自己的应用程序创造出更吸引人的用户界面。
#### 二、动画编程基础 动画编程的核心在于通过程序控制图像或模型的位置、形状等属性的变化来模拟动态效果。在VC++中实现这一过程,通常涉及到以下几个关键步骤: 1. **加载资源**:首先需要加载动画所需的图像...
这种动画效果可以通过多种编程语言和框架实现,比如JavaScript、CSS3或者Android的Java和iOS的Swift。 首先,我们需要了解这个动画类的核心概念。在JavaScript中,这可能涉及到定时器(setTimeout或...
在C++编程中,创建具有动画效果的窗口可以极大地提升用户体验。在Visual C++6.0环境下,开发者可以通过MFC(Microsoft Foundation Classes)库来实现这样的功能。MFC是微软提供的一个C++类库,它封装了Windows API,...
Flash 8.0是Adobe Flash的一个重要版本,提供了许多改进和新特性,使得动画效果的创建变得更加丰富和多样。以下是基于“Flash 8.0 几十种动画效果”这一主题的详细知识点: 1. **Flash 8.0的主要改进**: - **图形...
ActionScript是一种基于ECMAScript的编程语言,对于有一定编程基础的用户,这提供了更大的创作自由度。 5. **导出和嵌入**:完成动画设计后,SWFText可以导出为SWF格式,直接用于网页中。用户可以设置导出的参数,...
DUILIB是一个强大的开源UI库,...通过深入研究这个“DUILIB的动画demo”,开发者不仅能学会如何在自己的项目中使用DUILIB实现动画效果,还能对DUILIB的整体架构和设计理念有更深刻的理解,从而提升开发效率和软件质量。
在本文中,我们将深入探讨如何实现“仿美团、饿了么加入购物车的抛物线动画效果”,这一功能常见于许多电商与外卖应用中,为用户界面增添动态美感。我们将主要使用Kotlin语言来实现这一效果,同时也涉及到贝塞尔曲线...
该贺卡通过丰富的角色(如鞭炮、福字、灯笼和拜年小人)和声音效果展现浓厚的新春佳节气息,涉及具体操作步骤和关键编程技巧。文章详细讲解了项目启动后的每个环节,包括创建舞台背景及各种角色、编排相应的运动轨迹...
在VB中实现动画效果是提高用户界面友好性的一种常见手段,通过动态展示图像或对象的位置变化来吸引用户的注意力。 #### 二、核心概念和技术要点 ##### 1. 使用Image控件显示图像 在Visual Basic中,`Image` 控件...
布局核心动画的图层(Laying out Core Animation Layers)介绍了如何使用约束布局管理器来设置图层的布局和约束,以创建复杂的动画效果。 核心动画的键值编码扩展(Key-Value Coding Extensions for Core Animation...
鸿蒙 ArkTS 双色旋转动画效果是一种在 HarmonyOS 操作系统中实现的视觉效果,主要应用于用户界面的交互设计,提升用户体验。ArkTS 是 HarmonyOS 的一种编程语言,它是基于 TypeScript 扩展的,提供了丰富的类型安全...