android动画类型有:
xml:
alpha:渐变透明度动画效果
scale:渐变尺寸伸缩动画效果
translate:画面转换位置移动动画效果
rotate:画面转移旋转动画效果
对应的java类:
AlphaAnimation 渐变透明度动画效果
ScaleAnimation 渐变尺寸伸缩动画效果
TranslateAnimation 画面转换位置移动动画效果
RotateAnimation 画面转移旋转动画效果
下面是各种动画的示例代码
alpha
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<alpha
android:fromAlpha="0.1"
android:toAlpha="1.0"
android:duration="3000"
/>
<!-- 透明度控制动画效果 alpha
浮点型值:
fromAlpha 属性为动画起始时透明度
toAlpha 属性为动画结束时透明度
说明:
0.0表示完全透明
1.0表示完全不透明
以上值取0.0-1.0之间的float数据类型的数字
长整型值:
duration 属性为动画持续时间
说明:
时间以毫秒为单位
-->
</set>
scale
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<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:duration="700" />
</set>
<!-- 尺寸伸缩动画效果 scale
属性:interpolator 指定一个动画的插入器
在我试验过程中,使用android.res.anim中的资源时候发现
有三种动画插入器:
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 ,该动画转化在动画结束后被应用
-->
translate
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="30"
android:toXDelta="-80"
android:fromYDelta="30"
android:toYDelta="300"
android:duration="2000"
/>
<!-- translate 位置转移动画效果
整型值:
fromXDelta 属性为动画起始时 X坐标上的位置
toXDelta 属性为动画结束时 X坐标上的位置
fromYDelta 属性为动画起始时 Y坐标上的位置
toYDelta 属性为动画结束时 Y坐标上的位置
注意:
没有指定fromXType toXType fromYType toYType 时候,
默认是以自己为相对参照物
长整型值:
duration 属性为动画持续时间
说明: 时间以毫秒为单位
-->
</set></FONT></FONT>
rotate
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<rotate
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromDegrees="0"
android:toDegrees="+350"
android:pivotX="50%"
android:pivotY="50%"
android:duration="3000" />
<!-- rotate 旋转动画效果
属性:interpolator 指定一个动画的插入器
在我试验过程中,使用android.res.anim中的资源时候发现
有三种动画插入器:
accelerate_decelerate_interpolator 加速-减速 动画插入器
accelerate_interpolator 加速-动画插入器
decelerate_interpolator 减速- 动画插入器
其他的属于特定的动画效果
浮点数型值:
fromDegrees 属性为动画起始时物件的角度
toDegrees 属性为动画结束时物件旋转的角度 可以大于360度
说明:
当角度为负数——表示逆时针旋转
当角度为正数——表示顺时针旋转
(负数from——to正数:顺时针旋转)
(负数from——to负数:逆时针旋转)
(正数from——to正数:顺时针旋转)
(正数from——to负数:逆时针旋转)
pivotX 属性为动画相对于物件的X坐标的开始位置
pivotY 属性为动画相对于物件的Y坐标的开始位置
说明: 以上两个属性值 从0%-100%中取值
50%为物件的X或Y方向坐标上的中点位置
长整型值:
duration 属性为动画持续时间
说明: 时间以毫秒为单位
-->
</set>
使用xml的动画效果
public static Animation loadAnimation (Context context, int id)
//第一个参数Context为程序的上下文
//第二个参数id为动画XML文件的引用
//例子:
myAnimation= AnimationUtils.loadAnimation(this,id);
//使用AnimationUtils类的静态方法loadAnimation()来加载XML中的动画XML文件
另外,在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);
然后使用从View父类继承过来的方法startAnimation()来为View或是子类View等等添加一个动画效果
分享到:
相关推荐
Android动画入门教程之kotlin Android动画入门教程之kotlin是近期学习kotlin...Android动画入门教程之kotlin提供了关于Android动画入门教程之kotlin的相关资料,通过示例代码介绍的非常详细,需要的朋友可以参考借鉴。
根据给定的“Android入门手册-中文版”的文件信息,我们可以从中提炼出一系列与Android开发相关的知识点,这些知识点覆盖了从Android系统的基本概念到实际应用开发的各个环节。下面,我们将详细解析这些知识点。 ##...
《Android从入门到精通》是一本为初学者和有经验的开发者提供的全面学习指南,它涵盖了Android开发的基础到高级主题。这份压缩包包含了书中所有的源代码,这些代码带有注释,便于读者理解并实践。通过深入研究这些源...
本示例“android动画小示例”将带你入门Android动画的基本使用,无论你是新手还是有经验的开发者,都能从中找到启发。 属性动画是Android 3.0(API级别11)引入的新特性,它允许我们对对象的属性进行动画操作,这些...
### OpenGL ES 2 for Android 快速入门指南 #### 一、引言 《OpenGL ES 2 for Android: A Quick-Start Guide》是一本专为Android开发者设计的实用指南,旨在帮助读者快速掌握OpenGL ES 2的核心概念和技术,并应用...
"Android入门精通示例源码"是一个非常适合初学者及进阶者的学习资源,它包含了从基础到高级的各种示例,帮助开发者逐步熟悉并掌握Android应用程序开发的核心技能。 首先,我们要了解Android的基本架构。Android系统...
这份"Android用户接口开发入门手册"英文版为开发者提供了一个深入理解Android UI设计和实现的基础教程。以下是对该手册内容的详细概述: 1. **Android UI体系结构**:Android UI基于组件驱动的模型,主要包括...
总之,"Android-一个展示Android的物理动画的playground"是一个宝贵的教育资源,对于想要深入Android动画开发的开发者来说,这是一个不可多得的实践平台。通过研究和实践,开发者不仅可以提升技术技能,还能激发创新...
《Google Android开发入门与实战》是一本专门为初学者和开发者准备的指南,旨在帮助读者快速掌握Android应用开发的基础知识,并通过实战项目加深理解。这本书涵盖了从Android开发环境的搭建到实际应用开发的全过程,...
- **软件结构和使用的工具**:Android的软件架构分为四层:Linux内核、运行时库、应用程序框架和应用程序层。开发过程中主要使用的工具有Android Studio、Android SDK Manager等。 ##### 第2章:Android SDK的开发...
本示例"Android高级应用源码-自定义控件入门级demo.zip"旨在帮助开发者深入理解自定义控件的基本概念和实现方法。通过分析提供的两个示例项目"zdyview"和"zdyview2",我们可以学习到以下几个关键知识点: 1. **...
在Android游戏开发的世界里,本书“Android游戏开发教程示例-高清带目录”提供了一条清晰的学习路径,适合初学者入门。它以实际创建一款游戏为线索,将各种开发概念和技巧贯穿其中,旨在帮助读者从零开始构建自己的...
总之,"Android代码-LGame-0.3.zip"是一个专注于Android游戏开发的资源包,提供了一个便捷的2D游戏开发环境,包括了框架库、示例代码、文档和其他辅助资源,旨在帮助开发者快速入门并高效地构建自己的游戏应用。
本文将深入探讨“逐帧动画入门”这一主题,基于提供的标签和压缩文件名,我们可以推测这是关于Android平台上的一个学习资源,可能包含了一系列的源代码示例。 逐帧动画是一种常见的动画形式,它通过连续播放一系列...
此外,Android的`SurfaceView`和`TextureView`提供了在后台线程中进行连续绘图的能力,适用于游戏或动画场景。它们可以提高性能,避免UI线程阻塞。 总之,Android的画图机制是多样的,从简单的文本和形状到复杂的...
《ArcGIS Runtime for Android开发入门指南》 ArcGIS Runtime for Android是Esri公司提供的一款强大的地理信息系统(GIS)开发框架,用于在Android平台上构建地图应用。这个“arcgis-runtime-samples-android-100.4...
这份"Android高级应用源码-自定义控件入门级demo"压缩包提供了学习和实践自定义控件的基础示例,旨在帮助开发者从零开始了解并掌握自定义控件的创建流程。 自定义控件的核心在于扩展Android系统提供的基础视图类,...
4. **0400_第四部分:Android应用开发**:这部分可能深入到实际应用开发的各个方面,如UI设计(使用XML布局和ConstraintLayout)、动画效果、通知(Notification)、后台运行(Background Execution Limits)、手势...
13. **示例代码**:IOScocos2d学习压缩包中的示例代码是实践学习的好材料,通过实际运行和修改代码,能加深对cocos2d-iOS的理解。 总之,cocos2d-iOS为iOS游戏开发提供了一个全面而强大的工具集,无论你是刚接触...
这只是一个基础示例,实际上,自定义View可以实现更复杂的交互和视觉效果,如动画、手势识别等。不断实践和探索,你会发现自定义View能为你的应用带来无限可能。 在"View02"压缩包文件中,可能包含有更详细的代码...