android Tween Animation有四种,AlphaAnimation(透明度动画)、ScaleAnimation(尺寸伸缩动画)、TranslateAnimation(位移动画)、RotateAnimation(旋转动画)。

1、先来展示这四种动画通用的属性:

android:duration="2000"  //动画播放时长(毫秒)
android:fillBefore="true" //动画播放完毕后是否显示第一帧
android:fillAfter="false" //动画播放完毕后是否显示最后一帧
android:repeatCount="infinite" //动画重复次数。infinite或负数时无限循环
android:repeatMode="reverse" //restart为正向重复,reverse为反向重复
android:startOffset="2000" //延迟播放时间(毫秒)
android:interpolator="@android:anim/accelerate_decelerate_interpolator" //插补器,控制播放速率变化

在java代码中开启动画

ImageView animIv= (ImageView) findViewById(R.id.id_anim_iv);
Animation animation =AnimationUtils.loadAnimation(this, R.anim.set); //加载动画
animIv.startAnimation(animation); //开启动画

  

2、Alpha

android:fromAlpha="0.1"  //初始透明度
android:toAlpha="1.0" //结束透明度

  

0为完全透明,1为不透明。

3、Scale

android:fromXScale="0.0"  //横向初始比例
android:fromYScale="1.0" //纵向初始比例
android:pivotX="50%" //横向缩放中心点
android:pivotY="50%" //纵向缩放中心点
android:toXScale="1.0" //横向结束比例
android:toYScale="1.0" //纵向结束比例

  

0为不显示,1为正常比例。

4、Translate

android:fromXDelta="10"  //初始X坐标
android:fromYDelta="10" //初始Y坐标
android:toXDelta="100" // 结束X坐标
android:toYDelta="100" //结束Y坐标

  

坐标为相对坐标,单位为px。

5、Rotate

android:fromDegrees="0"  //初始角度
android:toDegrees="+359" //结束角度
android:pivotX="50%" //横向旋转中心
android:pivotY="50%" //纵向旋转中心

  

重复旋转时匀速转动,设置线性插补器

animation.setInterpolator(new LinearInterpolator());

6、动画监听

animation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}

@Override
public void onAnimationEnd(Animation animation) {
}

@Override
public void onAnimationRepeat(Animation animation) {
}
});

7、我们经常在一些App上看到一些Activity之间跳转的动画效果,其实我们可以用Tween动画来实现。

Intent intent=new Intent(MainActivity.this,SecActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.in, R.anim.out);

在overridePendingTransition(R.anim.in, R.anim.out);中,两个参数分别为SecActivity显示动画和MainActivity消失动画。

下面两个动画实现向右平移的效果:

in.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="1000"
android:fromXDelta="-100%"
android:fromYDelta="0"
android:toXDelta="0"
android:toYDelta="0" />
</set>

  

out.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:zAdjustment="bottom">
<translate
android:duration="2000"
android:fromXDelta="0"
android:fromYDelta="0"
android:toXDelta="100%"
android:toYDelta="0" />
</set>

其中,out.xml中的zAdjustment属性为z方向的层级,有top、nomal、bottom三个属性,若设置成top,当画面重叠时,处于上层,遮挡其它界面;而bottom则相反,将会被遮挡。

PS:Tween Animation中,组件的真实位置和显示位置不一定相同,因此点击显示位置未必会触发事件。需要根据需求设置初始和结束的相关属性,如果无法满足需求,可考虑使用属性动画。

android之Tween Animation的更多相关文章

  1. Android动画效果之Tween Animation(补间动画)

    前言: 最近公司项目下个版本迭代里面设计了很多动画效果,在以往的项目中开发中也会经常用到动画,所以在公司下个版本迭代开始之前,抽空总结一下Android动画.今天主要总结Tween Animation ...

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

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

  3. Android开发UI之补间动画-Tween Animation

    Tween Animation-补间动画 官网链接-http://developer.android.com/reference/android/view/animation/Animation.ht ...

  4. Android动画总结#补间动画(Tween Animation/View Animation) #帧动画(Frame Animation/Drawable Animation)#属性动画(PropertyAnimation)

    1.共有三种动画,英文名字多种叫法如下 第一种动画:补间动画(Tween Animation/View Animation) 四个:RotateAnimation旋转. AlphaAnimation透 ...

  5. Android Tween Animation

    View Animation, 它显示在view向上Tween Animation Tween动画.本质上没有变化View对象本身.只要改变它绘制 实施方式有两种.一个xml定义,直接在代码中的定义 ...

  6. Android 动画——Frame Animation与Tween Animation

    很多手机应用的引导页都是动画的,添加动画后的应用画面会更加生动灵活,今天博主也学习了Android中Animation的使用,下面来总结下.  android中的Animation分为两种,一种是Fr ...

  7. 深入Animation,在SurfaceView中照样使用Android—Tween Animation!

    第一类:Frame By Frame 帧动画( 不推荐游戏开发中使用)             所谓帧动画,就是顺序播放事先做好的图像,类似于放电影:             分析: 此种方式类似我之 ...

  8. Android基础夯实--重温动画(一)之Tween Animation

    心灵鸡汤:真正成功的人生,不在于成就的大小,而在于你是否努力地去实现自我,喊出自己的声音,走出属于自己的道路. 摘要 不积跬步,无以至千里:不积小流,无以成江海.学习任何东西我们都离不开扎实的基础知识 ...

  9. android tween animation合集

    自己写的一些tween animation动画xml文件,可用于activity切换,图片切换动画等 http://files.cnblogs.com/zj2012zy/anim.rar

随机推荐

  1. WPF 基础 - 控件与布局

    1. 前言 1. 数据驱动 UI WPF 是数据核心.主动的,UI 从属数据并表达数据.是被动的: 不再是 UI 驱动数据,而是数据驱动 UI: 2. 控件的定义 控件.数据内容.行为(控件响应用户操 ...

  2. hibernate中关系映射的配置问题

    部门和员工属于一对多的关系 员工的账户属于一对一关系 账户和权限属于多对多关系 department.hbm.xml 1 <hibernate-mapping> 2 <class n ...

  3. Kubernetes 实战 —— 03. pod: 运行于 Kubernetes 中的容器

    介绍 pod P53 pod 是 Kubernetes 中最为重要的核心概念,而其他对象仅仅用于 pod 管理. pod 暴露或被 pod 使用. pod 是一组并置的容器,代表了 Kubernete ...

  4. python列表,元组,字典,集合的比较总结

    这四个都是python中的序列,用于存放数据,他们区别总结如下:   列表list 元组tuple 字典dictionary 集合set 是否可变 可变 不可变 可变 可变 是否有序 有序 有序 无序 ...

  5. Java并发编程之队列

    Deque(双端队列) 子接口BlockingDeque,实现类如下: ArrayDeque:大下可变的数组双端队列,不允许插入null LinkedList:大小可变的链表双端队列,允许插入null ...

  6. Hi3559AV100 NNIE开发(7) Ruyistudio 输出mobileface_func.wk与板载运行mobileface_chip.wk输出中间层数据对比

    前面随笔讲了关于NNIE的整个开发流程,并给出了Hi3559AV100 NNIE开发(5)mobilefacenet.wk仿真成功量化及与CNN_convert_bin_and_print_featu ...

  7. Alluxio+HDFS+MapReduce集成及测试

    目录 1.在 HDFS 上配置 Alluxio 1.1.节点角色 1.2.软件版本 1.3.准备工作 1.3.1.设置 SSH 免密登录 1.3.2.安装 JDK 1.3.3.安装 Hadoop 1. ...

  8. CDN域名解析问题

    CDN域名解析问题 之前配置CDN域名解析,碰到一个配置带www的域名和不带www的域名,这里就有个解析的坑,已经将cdn域名都配置好的,但是一直访问不了,白屏现象 后面排除源站问题和cdn配置问题, ...

  9. Elasticsearch 主节点和暖热节点解析

    Elasticsearch 主节点和暖热节点解析 主节点 控制整个集群,进行一些轻量级操作,列如:跟踪哪些节点是集群中的一部分,决定节点分片分配,负责集群健康, 不包含数据,也不参与搜索和索引操作,对 ...

  10. 结对作业-stage_1

    教学班 罗杰.任建班周五3.4节 gitlab项目地址 Here it is. 成员 周远航(3004) 李辰洋(3477) 结对编程体验 感受 在前期设计时,两人合作可以收集更多资料,提供更多想法, ...