- 浏览: 195980 次
- 性别:
- 来自: 上海
文章分类
最新评论
Animation是个抽象类,他有五个子类。分别为:AlphaAnimation, AnimationSet, RotateAnimation, ScaleAnimation, TranslateAnimation 。
1. AlphaAnimation 淡入淡出效果
2. RotateAnimation 旋转效果
3. ScaleAnimation 缩放效果
4. TranslateAnimation 移动效果
5. AnimationSet animation集合,里面可以放多个animation。
下面直接实例,相关参数说明都在代码中:
1. AlphaAnimation 淡入淡出效果
2. RotateAnimation 旋转效果
3. ScaleAnimation 缩放效果
4. TranslateAnimation 移动效果
5. AnimationSet animation集合,里面可以放多个animation。
下面直接实例,相关参数说明都在代码中:
package com.kevin.animations; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.AlphaAnimation; import android.view.animation.Animation; import android.view.animation.AnimationSet; import android.view.animation.RotateAnimation; import android.view.animation.ScaleAnimation; import android.view.animation.TranslateAnimation; import android.widget.Button; import android.widget.ImageView; public class AnimationsDemo extends Activity { private ImageView img; private Button btn_alpha,btn_scale,btn_traslate,btn_rotate; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); img = (ImageView) findViewById(R.id.imageView1); btn_alpha = (Button) findViewById(R.id.btn_alpha); btn_rotate = (Button) findViewById(R.id.btn_rotate); btn_scale = (Button) findViewById(R.id.btn_scale); btn_traslate = (Button) findViewById(R.id.btn_translate); btn_alpha.setOnClickListener(new AlphaButtonListener()); btn_rotate.setOnClickListener(new RotateButtonListener()); btn_scale.setOnClickListener(new ScaleButtonListener()); btn_traslate.setOnClickListener(new TranslateButtonListener()); } // 淡入淡出效果 class AlphaButtonListener implements OnClickListener{ @Override public void onClick(View v) { // 创建AnimationSet对象 AnimationSet animationSet = new AnimationSet(true); // 创建AlphaAnimation对象 AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0); // 设置动画持续时间 alphaAnimation.setDuration(2000); // 将AlphaAnimation对象添加到AnimationSet当中 animationSet.addAnimation(alphaAnimation); // 使用ImageView的startAnimation方法开始执行动画 img.startAnimation(animationSet); } } // 旋转效果 class RotateButtonListener implements OnClickListener{ @Override public void onClick(View v) { AnimationSet animationSet = new AnimationSet(true); /* * fromDegrees 为0,起始旋转的角度 * toDegrees 为360,最终旋转到的角度 * pivotXType 为动画在X轴相对于物件位置类型(三种1.absolute 绝对坐标, 2. RELATIVE_TO_PARENT相对父控件 3.RELATIVE_TO_SELF相对于自身) * pivotXValue 1f(百分比)代表整个x轴的值,0f代表X轴的原点 * pivotYType,pivotYValue与上面类似 * pivotXType,pivotXValue,pivotYType,pivotYValue四个参数确定旋转的圆心 */ RotateAnimation rotateAnimation = new RotateAnimation(0, 320, Animation.RELATIVE_TO_PARENT, 1f, Animation.RELATIVE_TO_PARENT,0f); rotateAnimation.setDuration(5000); animationSet.setFillAfter(true); animationSet.setFillBefore(false); animationSet.addAnimation(rotateAnimation); img.startAnimation(animationSet); } } // 缩放效果 class ScaleButtonListener implements OnClickListener{ @Override public void onClick(View v) { AnimationSet animationSet = new AnimationSet(true); /* * fromX为X大小 * toX为缩放后的X大小(>1放大,<1缩小,=1维持不变) * fromY为Y轴大小 * toY为缩放后的Y大小 * pivotXType为动画在X轴相对于物件位置类型(三种1.absolute 绝对坐标, 2. RELATIVE_TO_PARENT相对父控件 3.RELATIVE_TO_SELF相对于自身) * pivotXValue 1f代表整个x轴的值,0f代表X轴的原点 * pivotYType,pivotYValue与上面类似 * pivotXType,pivotXValue,pivotYType,pivotYValue四个参数确定轴心 */ ScaleAnimation scaleAnimation = new ScaleAnimation(1, 2.0f, 1, 2.0f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); scaleAnimation.setDuration(2000); animationSet.addAnimation(scaleAnimation); // 让img停留在最终的位置,而不恢复到初始位置 animationSet.setFillAfter(true); animationSet.setFillBefore(false); img.startAnimation(animationSet); } } // 移动效果 class TranslateButtonListener implements OnClickListener{ @Override public void onClick(View v) { AnimationSet animationSet = new AnimationSet(true); /* * 第一个参数为动画在X轴相对于物件位置类型 * fromXValue为动画起始时 X坐标上的移动位置 * toXValue为动画结束时 X坐标上的移动位置 (最终的X的位置) * 下面的Y类似 */ TranslateAnimation translateAnimation = new TranslateAnimation( Animation.RELATIVE_TO_SELF, 0f, Animation.RELATIVE_TO_SELF, 0f, Animation.RELATIVE_TO_SELF, 0f, Animation.RELATIVE_TO_SELF, -1f); translateAnimation.setDuration(5000); animationSet.addAnimation(translateAnimation); img.startAnimation(animationSet); System.out.println(img.getWidth() + " " + img.getHeight()); } } }
- Animations.zip (51.8 KB)
- 下载次数: 15
发表评论
-
fbreader
2012-09-21 12:52 942http://www.siegmann.nl/epublib/ ... -
Android中dispatchTouchEvent, onInterceptTouchEvent, onTouchEvent的理解
2012-07-16 13:53 988http://blog.csdn.net/guitk/arti ... -
Handler的理解
2012-01-31 09:36 1027handler类允许你发送消息和处理线程消息队列中的消息及ru ... -
自定义EditText
2011-09-27 14:25 915http://blog.csdn.net/a570056568 ... -
application
2011-09-19 13:58 815www.devdiv.com/thread-45479-1-1 ... -
分析android动画模块
2011-08-08 10:52 887http://yueguc.iteye.com/blog/47 ... -
Intent的几种用法
2011-08-08 10:12 776http://yueguc.iteye.com/blog/39 ... -
菜单定制
2011-08-08 10:00 961对一个Android应用中的每一个屏幕,也就是说,对每一个Ac ... -
带图标的Menu
2011-08-08 09:51 842//不带图标的menu menu.add( ... -
Checkbox(打勾显示输入的密码)
2011-07-13 13:04 1638要想判断Checkbox是不是被选中,必须注册OnChec ... -
各种Dialog关系图
2011-07-13 11:19 1033理理清楚 -
ImageView的scaletype属性
2011-07-13 08:59 1213ImageView的属性android:scaleType,即 ... -
strings.xml
2011-07-12 10:35 942在values/strings.xml定义的字符串常量中, ... -
Json数据解析
2011-07-12 09:34 5218本篇介绍一下android中的json数据解析。 首先 ... -
关于Android隐式Intent
2011-07-11 13:56 917http://hi.baidu.com/spare_h/blo ... -
Animation(三)
2011-07-04 10:54 1477继续上篇的animation,本篇用到的是Animatio ... -
Frame动画
2011-06-30 11:36 1023本例完全参照androidAPI文档上面来写的,哈哈。 ... -
Animation(二)
2011-06-30 10:29 1335本篇介绍如何用配置文件进行控件的动画设置。步骤如下: ... -
Spinner
2011-06-28 13:15 987Spinner构建: 1. 构建数据Adapter ... -
Android 动画之Tween动画详细讲解
2011-06-28 09:37 1104Tween动画在Android中分为4类,它们分别是:Alph ...
相关推荐
sass.animations 一堆 sass 动画混合安装通过凉亭$ bower install aglobof-sass.animations --save-dev 通过 npm $ npm install aglobof-sass.animations --save-dev用法在你的根 sass 文件中包含一个部分。...
Crowd Animations 是一个开箱即用的解决方案,支持在高性能场景中使用大量的动画角色。CA (Crowd Animations) 采用 GPU Instancer 核心功能,并在 GPUI 间接实例化解决方案和 GPU 剔除技术的基础上增加了 GPU 蒙皮...
一个Demo,包含了:Animation(动画)的四种类型的xml实现方式和java代码实现方式。
它是一款实现了各种Material风格动画效果的开源项目,包括Activity之间的跳转动画,View的动画等。
Animations是一个实现android UI界面动画效果的API,Animations提供了一系列的动画效果,可以进行旋转、缩放、淡入淡出等,这些效果可以应用在绝大多数的控件中。 二、Animations的分类 Animations从总体上可以分为...
水平立方翻转
React本机FlatList介绍动画一个自定义FlatList组件,提供5种类型的项目简介动画特征FlatList介绍动画。 渲染您自己的自定义项目组件。 与世博会兼容。 用TypeScript编写。安装yarn add flatlist-intro-animations# ...
Flutter项目的一组简单但非常可定制的加载动画。 安装 将以下内容添加到您的pubspec.yaml文件中: ... dependencies : ... loading_animations : " ^2.1.0 " ... 然后将文件导入到您的项目中: import '...
Collection of nice loading animations.zip,一组很棒的加载动画
颤振动画一组动画,旨在改善您下一个Flutter项目的用户体验。 我希望由,这些示例可以为您的实际项目提供帮助,或者仅用于学习和启发目的。 除了分叉和查看可以在此处获得。关于我我是一名来自伊拉克的移动开发人员...
本来想不要分的,但是最近的确有点缺分,我把android官网demo之animations.zip的拿出来看了一遍,然后整了一个eclipse可用的
Material-Animations 是一个很好过渡动画库, 可以应用于 Activity 与 Activity 之间的跳转, Fragment 与 Fragment 之间的跳转, 以及各个 View 变化前后的过渡动画。效果图: 标签:Material
animatelo.js是一款基于Web Animations API的js动画库插件。通过animatelo.js动画库插件可以制作出63种炫酷的过渡动画效果,这些动画效果和animate.css相似。
解压密码:123 ||圣诞主题动画ae模板VideoHive - Christmas Titles And Animations for After Effects [AEP]免费下载它还包括一个先进的模块化结构,您可以调整您的视频的持续时间。您也可以更改颜色,字体大小和...
这个 repo 是一个简单的应用程序,用于说明 RMQ 可用的动画: rmq(my_view).animations.fade_in rmq(my_view).animations.fade_out rmq(my_view).animations.blink rmq(my_view).animations.throb rmq(my_view)...
Sword and Shield Animations v1.0 剑与盾动画Unity游戏资源包unitypackage项目C# 支持Unity版本2020.3.38或更高 手工制作的终结技和剑盾攻击的集合 描述 这是一个动画资源包,为剑和盾的用户提供手工制作的配对动画...
这是一个动画示例程序 实现淡入淡出, 缩放, 移动, 旋转 具体介绍请参见 http://write.blog.csdn.net/postedit/6406466
这一资源集所有当前和未来动画资源包于一体! 此资源包包含: - 基本运动专业版资源包 - 村民动画资源包 - 近战勇士动画资源包 - 施法法师动画资源包 - 投掷动画资源包 - 跳舞动画专业版资源包 - 反向动力学助手...
\ animations \ construction geometry 要运行动画,请在任何桌面Web浏览器中打开“构造几何”文件夹中的任何HTM文件(例如.. \ animations \构造几何\ pentagon 100.htm)。 VivioJS动画可以在Windows,Linux和OS ...