Tween动画
知识点
Alpha:渐变透明度动画效果
Scale:渐变尺寸伸缩动画效果
Translate:移动效果
Rotate:旋转效果
1、 AlphaAnimation(float fromAlpha,float toAlpha)
功能:构建一个渐变透明度动画
参数:fromAlpha:为动画的起始透明度,toAlpha:终止透明度(0.0表示完全透明,1.0表示完全不透明)
2、 ScaleAnimation(float fromX,float toX,flaot fromY, flaot toY, int pivotXType,float pivotXValue,int pivotYType,flaot pivotYValue)
功能:构建一个渐变尺寸伸缩动画
参数:fromX, toX分别是起始和结束时x坐标上的伸缩尺寸。
fromY, toY分别是起始和结束时y坐标上的伸缩尺寸。
pivotXType,pivotYType分别是x,y的伸缩模式。
pivotXValue, pivotYValue分别是x,y的坐标开始的位置。
3、 TranslateAnimation(float fromXDelta, flaot toXDelta, flaot fromYDelta,float toYDelta)
功能:构建一个渐变尺寸伸缩动画
参数:fromXDelta, fromYDelta:分别为起始坐标, toXDelta, toYDelta分别为终点坐标
4、 RotateAnimation(float fromDegrees,float toDegress,int pivotXType,float pivotXValue,int pivotYType,float pivotYValue)
功能:构建一个旋转画面的动画
参数:fromDegrees开始的角度, toDegress为结束的角度,.
pivotXType, pivotYType分别为x,y的伸缩模式,.
pivotXValue, pivotYValue分别为x,y的开始位置
5、 setDuration(long durationMillis)
功能:设置动画显示的时间
参数:durationMillis为动画显示时间的长短,以毫秒为单位
6、 startAnimation(Animation animation)
功能:开始播放动画
参数:animation为要播放的动画
代码示例
package com.example.examples_05_15;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.drawable.BitmapDrawable;
import android.view.KeyEvent;
import android.view.View;
import android.view.animation.AlphaAnimation;
import android.view.animation.Animation;
import android.view.animation.RotateAnimation;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;
public class GameView extends View {
//定义mAnimationAlpha
private Animation mAnimationAlpha=null;
//定义mAnimationScale
private Animation mAnimationScale=null;
//定义mAnimationTranslate
private Animation mAnimationTranslate=null;
//定义mAnimationRotate
private Animation mAnimationRotate=null;
//定义mBitmapQQ
Bitmap mBitmapQQ;
public GameView(Context context) {
super(context);
// TODO Auto-generated constructor stub
//装载图片
mBitmapQQ=((BitmapDrawable)getResources().getDrawable(R.drawable.qq)).getBitmap();
}
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
//绘制图片
canvas.drawBitmap(mBitmapQQ, 0, 0, null);
}
public boolean onKeyDown(int keyCode,KeyEvent event) {
if(keyCode==KeyEvent.KEYCODE_DPAD_UP)
{
//创建mAnimationAlpha
mAnimationAlpha=new AlphaAnimation(0.1f, 1.0f);
//设置动画时间
mAnimationAlpha.setDuration(3000);
//开始播放
this.startAnimation(mAnimationAlpha);
}
else if (keyCode==KeyEvent.KEYCODE_DPAD_DOWN) {
//创建scale动画
mAnimationScale=new ScaleAnimation(0.0f, 1.0f, 0.0f, 1.0f,
Animation.RELATIVE_TO_SELF,0.5f,Animation.ZORDER_TOP,0.5f);
//设置动画时间
mAnimationScale.setDuration(500);
//动画开始
this.startAnimation(mAnimationScale);
}
else if (keyCode==KeyEvent.KEYCODE_DPAD_LEFT) {
//创建mAnimationTranslate
mAnimationTranslate =new TranslateAnimation(10, 100, 10, 100);
//设置动画时间
mAnimationTranslate.setDuration(1000);
//开启动画
this.startAnimation(mAnimationTranslate);
}
else if (keyCode==KeyEvent.KEYCODE_DPAD_RIGHT) {
//创建mAnimationRotate
mAnimationRotate =new RotateAnimation(0.0f, +360.0f, Animation.RELATIVE_TO_SELF,
0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
//设置时间
mAnimationRotate.setDuration(1000);
//开启动画
this.startAnimation(mAnimationRotate);
}
return true;
}
}
package com.example.examples_05_15;
import android.os.Bundle;
import android.app.Activity;
import android.view.KeyEvent;
import android.view.Menu;
public class MainActivity extends Activity {
GameView gameView=null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
gameView=new GameView(this);
setContentView(gameView);
}
public boolean onKeyDown(int keyCode,KeyEvent event) {
if(gameView==null)
{
return false;
}
return gameView.onKeyDown(keyCode, event);
}
}
Tween动画的更多相关文章
- Android tween 动画 XML 梳理
前言: Tween动画是展现出旋转.渐变.移动.缩放的这么一种转换过程,即补间动画.Tween动画有两种定义方式:XML形式,编码形式.这次主要来梳理XML的方式配置动画 (1)XML定义动画,按照动 ...
- Android动画之Tween动画实战
Android动画分为Tween动画和Frame动画,上一节通过一个实例介绍了Frame动画,本节将介绍Tween动画.Tween可以把对象进行缩小.放大.旋转和渐变等操作. Tween动画有 ...
- 安卓开发基础之tween动画基本使用,代码教学
xml代码块: <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:andro ...
- 【Android动画】之Tween动画 (渐变、缩放、位移、旋转)
Android 平台提供了两类动画. 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转.平移.放缩和渐变). 第二类就是 Frame动画,即顺序的播放事先做好的图像,与g ...
- android之tween动画详解
android中一共提供了两种动画,其一便是tween动画,tween动画通过对view的内容进行一系列的图像变换(包括平移,缩放,旋转,改变透明度)来实现动画效果,动画效果的定义可以使用xml,也可 ...
- 【转】android动画之Tween动画 (渐变、缩放、位移、旋转)
原文:http://blog.csdn.net/feng88724/article/details/6318430 Android 平台提供了两类动画. 一类是Tween动画,就是对场景里的对象不断的 ...
- Unity NGUI Tween动画回调不执行问题
最近工作中遇到了一个问题 NGUI的Tween动画完成 回调函数 偶尔不执行 偶现Bug 今天我仔细看了下代码发现 TweenPosition tempTween = varTar.GetCompon ...
- 关于Unity中NGUI的帧动画和Tween动画
帧动画 1.把三张帧动画的贴图png制作成图集,NGUI---->Open---->Atlas Maker,生成一个预制体,一个材质球,一个大图 2.创建一个Sprite类型的Sprite ...
- egret的tween动画循环播放
开发中发现了egret的自带tween动画中tweenGroup没有自动重新播放的代码,就使用了一种较笨的方法进行播放 比如:我在exml皮肤文件中写了一个动画组tweenGroup,并且在ts文件中 ...
- android tween动画和Frame动画总结
tween 动画有四种 //透明度动画 AlphaAnimation aa = (AlphaAnimation) AnimationUtils.loadAnimation(MainActivity. ...
随机推荐
- 写的好帮手项目官员 - Evernote 5.4(Evernote的) 中国绿色版
Evernote (中国名:Evernote的) 是一个自由和优秀的笔记软件或个人知识管理软件.它可以帮助你有效地管理所有类型的电子票据.信息等:xbeta 我写了很多信息化管理或 Evernote ...
- Storing and Retrieving Images from SQL Server using Microsoft .NET
原文 Storing and Retrieving Images from SQL Server using Microsoft .NET Download source - 19.6 Kb Intr ...
- java 中类的加载顺序(转)
1.虚拟机在首次加载Java类时,会对静态初始化块.静态成员变量.静态方法进行一次初始化 2.只有在调用new方法时才会创建类的实例 3.类实例创建过程:按照父子继承关系进行初始化,首先执行父类的初始 ...
- Linux命令行下载文件百度云盘
本来想直接使用wget去下载.但百度似乎增加限制,下半停产,不就不再下.刚刚好找其他方法.另辟蹊径: http://oott123.github.io/bpcs_uploader/ 版权声明:本文博客 ...
- dapper的Dapper-Extensions用法(一)
dapper的Dapper-Extensions用法(一) Dapper-Extensions Dapper Extensions is a small library that complement ...
- 使用 CodeIgniter 框架快速开发 PHP 应用(五)
原文:使用 CodeIgniter 框架快速开发 PHP 应用(五) 简化 HTML 页面和表格设计这一章介绍了又一个节约你的时间而且使你的代码更具安全性和逻辑性的领域.第一,我们将会介绍创建视图的各 ...
- Nyoj 城市平乱(图论)
描述 南将军统领着N个部队,这N个部队分别驻扎在N个不同的城市. 他在用这N个部队维护着M个城市的治安,这M个城市分别编号从1到M. 现在,小工军师告诉南将军,第K号城市发生了暴乱,南将军从各个部队都 ...
- 如何使用 RMAN 异构恢复一些表空间
在oracle 在日常维护的数据库中难免会遇到误删数据和使用(drop.delete. truncate)当我们使用常规手段(flashback query .flashback drop)当数据不能 ...
- Activity的LaunchMode情景思考
此链接:http://blog.csdn.net/xiaodongrush/article/details/28597855 1. 有哪几种类型?分别有什么用? http://developer.an ...
- Android[安德鲁斯] 文本Air Video 远程播放电脑视频
苹果iOS下列.目前应用Air Video,能力iOS由Wifi远程直接播放电脑视频,无需看视频复制到手机.非常好用!最近使用Android打电话.展望类别似应用,找了很长一段时间没有找到.在仔细的思 ...