Android动画的两种:Frame帧动画、Tween动画(位移动画)【实现:存放目录res/anim

Tween动画:(位移、缩放、旋转):通过对场景里的对象不断做图像变换。

四种效果Alpha、Scale、Translate、Rotate[蓝色为xml中属性的解释]

  1. Alpha:渐变透明度

fromAlpha   动画开始时候透明度

toAlpha为    动画结束时候透明度

说明: 0.0表示完全透明; 1.0表示完全不透明

duration     属性为动画持续时间

说明:   时间以毫秒为单位1000=1s

  1. Scale:伸缩

fromXScale  为动画起始时 X坐标上的伸缩尺寸

toXScale    为动画结束时 X坐标上的伸缩尺寸

fromYScale  为动画起始时Y坐标上的伸缩尺寸

toYScale    为动画结束时Y坐标上的伸缩尺寸

说明:以上四种属性值

0.0表示收缩到没有 ;1.0表示正常无伸缩

【值小于1.0表示收缩 ;值大于1.0表示放大】

pivotX:     中心点X坐标位置

pivotY:     中心点Y坐标位置

duration     属性为动画持续时间

说明:   时间以毫秒为单位

  1. Translate:画面转换位置移动动画效果
  • 注意:fromXTyep to Xtype  fromYType to Ytype默认是以自己为相对参照物

整型值:(三种值:100%p,100%)

fromXDelta 属性为动画起始时 X坐标上的位置

toXDelta     属性为动画结束时 X坐标上的位置

fromYDelta 属性为动画起始时 Y坐标上的位置

toYDelta     属性为动画结束时 Y坐标上的位置

长整型值:

duration     属性为动画持续时间

说明:   时间以毫秒为单位

android:fillBefore="false"

android:fillAfter="true"  是否保留动画【变换】后,结束后的位置状态

(向上为-数,往下是+数)

  1. Rotate:画面转移旋转动画效果

属性:interpolator 指定一个动画的插入器

有三种动画插入器:

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  属性为动画持续时间

说明:时间以毫秒为单位

Java中绑定TweenAnimation以及实现动画效果

private ImageView ivAbout;

private Animation aboutAnimation;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.animation_tween_activity);

initView();

startAlphaScaleAnimation();

}

private void initView() {

ivAbout=(ImageView)super.findViewById(R.id.ivAbout);

}

/**启动移动动画的方法*/

private void startTransAnimation(){

aboutAnimation=AnimationUtils.loadAnimation(this, R.anim.translate_about);//获得动画效果

aboutAnimation.setFillAfter(true);//设置保留动画结果的属性

ivAbout.startAnimation(aboutAnimation);//将图片关联且启动动画

}

Activity切换动画

  1. 动画xml
  2. 在startAcitvity和finish方法后调用overridePending Transition方法

super.overridePendingTransition(enterAnim, exitAnim)

Frame帧动画

  1. drawable新建xml文件è选择animation-list,设置动态资源、时间、是否循环属性。

<!--oneshot="false"循环播放  -->

  1. 在Activity.java代码中进行资源绑定实现动画效果。

(1)animationlist_frame.xml 配置

<?xml version="1.0" encoding="utf-8"?>

<animation-list xmlns:android="http://schemas.android.com/apk/res/android"

android:oneshot="false">

<item android:drawable="@drawable/anim_wip_bk_fog" android:duration="5000"></item>

<item android:drawable="@drawable/anim_wip_bk_dust" android:duration="5000"></item>

</animation-list>

(2)java代码的实现

private RelativeLayout root;

private AnimationDrawable drawable;

private void initView() {

root=(RelativeLayout)super.findViewById(R.id.root);

//取得动画效果的资源设置为layout root的背景

root.setBackgroundResource(R.drawable.animationlist_frame);

//将root的背景资源设置为逐帧动画的资源文件

drawable=(AnimationDrawable)root.getBackground();

}

private void startAnimation() {

drawable.start();//开始帧动画

}

@Override

protected void onResume() {

super.onResume();

startAnimation();

}

@Override

protected void onStop() {

super.onStop();

drawable.stop();//停止帧动画

}

Android 动画学习笔记的更多相关文章

  1. Android动画学习笔记-Android Animation

    Android动画学习笔记-Android Animation   3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中 ...

  2. Android动画学习笔记大集合

    其实动画这个东西我已经了解过很长一段时间了,但是一直没系统的整理过.关于android中的各种动画虽然都会用,但总怕自己会慢慢遗忘.这回看了几篇动画分析的文章,自己也学到了一些东西,在此就梳理一下. ...

  3. android拾遗——Android 动画学习笔记

    3.0以前,android支持两种动画模式,tween animation,frame animation,在android3.0中又引入了一个新的动画系统:property animation,这三 ...

  4. Android动画学习(二)——Tween Animation

    前两天写过一篇Android动画学习的概述,大致的划分了下Android Animation的主要分类,没有看过的同学请移步:Android动画学习(一)——Android动画系统框架简介.今天接着来 ...

  5. Android自动化学习笔记:编写MonkeyRunner脚本的几种方式

    ---------------------------------------------------------------------------------------------------- ...

  6. Android自动化学习笔记之MonkeyRunner:官方介绍和简单实例

    ---------------------------------------------------------------------------------------------------- ...

  7. android开发学习笔记000

    使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...

  8. android动画学习

    android动画学习   转载自:http://www.open-open.com/lib/view/open1329994048671.html 3.0以前,android支持两种动画模式,twe ...

  9. Android 数字签名学习笔记

    Android 数字签名学习笔记 在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,如果一个permission的pro ...

随机推荐

  1. linux查看MySQL版本的四种方法

    1 在终端下执行 mysql -V 2 在help中查找 mysql --help |grep Distrib 3 在mysql 里查看 select version() 4 在mysql 里查看 s ...

  2. Qt编译安装qwt错误moc/xxx Error:126

    最近搞设计,需要在上位机上绘制曲线,在网上找了找,发现python的matplotlib和Qt的qwt都不错,本着难度最小原则,选择了Qt下面的qwt,安装过程中遇到了编译错误:moc/xxx Err ...

  3. 使用ZeroNet搭建P2P全球网站

    软件 ZeroNet是一个利用比特币加密和BT技术提供不受审查的网络与通信的BT平台,ZeroNet网络功能已经得到完整的种子的支持和加密连接,保证用户通信和文件共享的安全.使用ZeroNet,你可以 ...

  4. linux /usr/bin/ld cannot find 解决

    问题: 在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息: /usr/bin/ld: cannot find -lxxx 这些讯息会随着编译不同类型的source ...

  5. [Liferay6.2]AUI表单验证示例

    <%@ page contentType="text/html; charset=UTF-8"%> <%@ taglib uri="http://jav ...

  6. 微软有完善的WP开发教程

    微软的Windows Phone 开发者中心 地址:http://dev.windowsphone.com/zh-cn/develop由于这里的教程非常完善,大家直要把开发者中心的内容看完就可以了,所 ...

  7. iOS Crash文件的解析

    iOS Crash文件的解析 开发程序的过程中不管我们已经如何小心,总是会在不经意间遇到程序闪退.脑补一下当你在一群人面前自信的拿着你的App做功能预演的时候,流畅的操作被无情地Crash打断.联想起 ...

  8. OSGi-入门篇之生命周期层(03)

    前言 生命周期层在OSGi框架中属于模块层上面的一层,它的运作是建立在模块层的功能之上的.生命周期层一个主要的功能就是让你能够从外部管理应用或者建立能够自我管理的应用(或者两者的结合),并且给了应用本 ...

  9. 【XSY2773】基因 后缀平衡树 树套树

    题目描述 有一棵树,每条边上面都有一个字母.每个点还有一个特征值\(a_i\). 定义一个节点\(i\)对应的字符串为从这个点到根的路径上所有边按顺序拼接而成的字符串\(s_i\). 有\(m\)次操 ...

  10. 监测多个textFiled.text的长度同时不小于0

    #pragma mark - 显示超过11位不让输入 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange: ...