动画效果编程基础:
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
值等动画,每个子类都在父类的基础上增加了各自独有的属性。
然后可以调用里面的函数设置相应的参数...
分享到:
相关推荐
在Android开发中,动画是提升用户体验的关键因素之一。补间动画(Tween Animation)是Android提供的基本动画类型,它通过对对象的透明度、大小、位置或...不断实践和探索,将有助于我们成为更出色的Android动画开发者。
本文将深入探讨两种主要的Android动画类型:Tween Animation(平滑动画)和Property Animation(属性动画)。这两种技术都能为应用程序带来生动和交互性的效果,但它们的工作原理和应用场景有所不同。 **Tween ...
TweenAnimation是Android SDK中提供的一种基础动画类型,它基于帧动画(Frame Animation)的概念,通过平移、旋转、缩放和改变透明度等属性来实现对象的变化效果。让我们深入探索Android TweenAnimation的源码,了解...
通过学习和实践这个Tween动画的演示demo,开发者可以深入理解Android动画机制,为自己的应用增添生动有趣的交互体验。同时,也可以在此基础上探索更高级的动画技术,如属性动画(Property Animation)和视图动画...
Android Tween Animation动画的使用demo,以及自定义动画,原理解析,相关博客: http://blog.csdn.net/w18756901575/article/details/53081551
例如,可能包含一个XML文件(如TweenAnimation.xml),定义了一个View平移和缩放的动画。然后在Java代码中加载并应用这个动画,使得按钮在点击时有明显的视觉反馈。 ```xml <!-- TweenAnimation.xml --> ...
本篇将深入讲解如何利用`Animation-list`在Android中实现逐帧动画。 一、`Animation-list`基础 `Animation-list`是Android XML动画资源的一种类型,它定义了一组子项(通常为ImageView的源),这些子项按照指定的...
TweenAnimation在Android开发中是一种常见的动画技术,用于创建平滑的过渡效果,它可以改变View对象的属性,如位置、大小、透明度等,为用户界面增添动态美感。本Demo代码下载提供了关于TweenAnimation的实例,帮助...
在Android开发中,动画是提升用户体验的关键因素之一。TweenAnimation,又称补间动画,是Android提供的基础动画系统的一部分,它可以实现对象在指定时间内平移...不断实践和探索,你将在Android动画领域变得更加熟练。
在Android开发中,动画是提升用户体验的关键因素之一。Tween动画,又称补间动画,是Android提供的基础动画系统...通过实践和调试这些代码,你可以掌握Android动画系统的核心概念,从而在开发中创造出更丰富的视觉效果。
Tween动画,又称平移动画,是Android提供的基础动画类型,主要用于对象的透明度、缩放、平移和旋转等属性的变化。让我们深入探讨Android Tween动画的源码,理解其工作原理。 首先,`alpha`动画涉及到的是对象的透明...
Tween动画,又称补间动画,是Android提供的基础动画类型,主要用于对象的平移、旋转、缩放和透明度变化等效果。本篇文章将深入探讨如何通过XML在Android中实现Tween动画。 首先,让我们了解Tween动画的基本原理。...
该Demo,主要以xml形式实现了Animation动画中的Tween动画(另一种动画Frame动画Demo,稍后奉上),Tween动画的另一种实现形式是直接在代码中实现,相关Demo已上传,有需要的读者请到我的资源文件中下载即可。
在Android开发中,补间动画(Tween Animation)是实现动态效果的一种重要手段,它通过平移、旋转、缩放和改变透明度等属性变化来创建流畅的视觉效果。本篇文章将深入探讨Android补间动画的基本概念、使用方法及其...
- 帧动画通常在animation-list标签中定义,每个item标签代表一帧,设置android:duration属性来控制每帧持续的时间。 - 补间动画在objectAnimator或animatorSet标签内定义,可以设置属性名(android:propertyName)...
【Android面试专题课程】 ...20. **Android动画**:了解如何使用Tween动画、Frame动画、属性动画,以及它们在不同场景下的适用性。 以上是Android面试中常见的技术点,深入理解这些知识有助于在面试中脱颖而出。
它是Android动画系统中的一个重要组件,用于执行基于属性的动画。通过`ObjectAnimator.ofFloat()`或`ObjectAnimator.ofInt()`方法,我们可以指定目标对象和要动画化的属性。例如,要让一个View平滑地移动,可以创建...
本资源包“安卓动画效果相关-android动画库.rar”包含了多个可能用于实现不同动画效果的代码示例。由于文件数量较多,无法逐一验证其可用性,但它们可以作为学习和参考的宝贵资料。 在Android中,动画主要分为两种...
Android动画之Animation的使用。包括变换动画Tween Animation,帧动画Frame Animation,布局动画Layout Animation,属性动画Property Animation
Android动画主要分为两大类:Tween动画(渐变动画)和Frame-by-frame动画(逐帧动画)。这两种动画形式能够满足开发者对于基本动画效果的需求。 #### 二、XML中的动画定义 Android动画可以通过XML文件定义,并在...