使用xml的方式设置动画属性

 1   <?xml version="1.0" encoding="utf-8"?>
 2    <set xmlns:android="http://schemas.android.com/apk/res/android">
 3        <!--
 4        fromAlpha:动画的初始状态
 5        toAlpha:动画的最终状态
 6        duration:动画从初始状态到最终状态的持续时间
 7        repeatCount:不包括第一次显示的,显示次数
 8         -->
 9        <alpha
10         android:fromAlpha="0.1"
11         android:toAlpha="1.0"
12         android:duration="2000"
13         android:repeatCount="3"
14          />
15  </set>

 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2      xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
 3      android:layout_height="match_parent"
 4      tools:context="com.test2_23.test2_23.AlphaAnimation_Activity">
 5
 6       <ImageView
 7          android:id="@+id/img_Alpha"
 8          android:src="@drawable/img_bird"
 9          android:layout_width="wrap_content"
10          android:layout_height="wrap_content"
11          android:layout_centerInParent="true"
12         />
13
14 </RelativeLayout>

 1 public class AlphaAnimation_Activity extends Activity {
 2
 3     @Override
 4     protected void onCreate(Bundle savedInstanceState) {
 5         super.onCreate(savedInstanceState);
 6         setContentView(R.layout.activity_alpha_animation_);
 7         //获取到要设置动画的控件
 8         ImageView iv = (ImageView) findViewById(R.id.img_Alpha);
 9         //获取动画文件
10         Animation animation = AnimationUtils.loadAnimation(this,R.anim.animation);
11         //清除之前的动画
12         iv.clearAnimation();
13         //开始动画
14         iv.startAnimation(animation);
15     }
16 }

使用java的方式来设置动画属性

 1 public class javaAlpha_Activity extends Activity {
 2
 3     @Override
 4     protected void onCreate(Bundle savedInstanceState) {
 5         super.onCreate(savedInstanceState);
 6         setContentView(R.layout.activity_java_alpha_);
 7         ImageView img = (ImageView) findViewById(R.id.img_Alpha_java);
 8         //使用java代码实现也非常简单,直接设置一个Animation类的对象就可以了
 9         //AlphaAnimation 是Animation的子类
10         //在构造函数中设置他的初始状态fromAlpha和最终状态toAlpha,是float类型
11         Animation animation = new AlphaAnimation(0.1f,1.0f);
12         //设置持续时间
13         animation.setDuration(2000);
14         //设置重复次数
15         animation.setRepeatCount(3);
16         //清除原有的动画,避免多次点击出现重复的效果
17         img.clearAnimation();
18         //开始执行动画
19         img.startAnimation(animation);
20     }
21 }

补间动画(TweenAnimation):补间动画就是确定了动画的启始和终点两个端点状态之后,由系统自动计算中间的各个状态,并补充到两个端点之间,形成一个连续的动画效果。

补间动画可以分为4种类型:

渐变动画(AlphaAnimation)

缩放动画 (scaleAnimation)

平移动画(TranslateAnimation)

旋转动画(RotateAnimation)

这几种动画都可以用xml文件和java代码的方式实现,

渐变动画xml实现方式:

1.在res目录下创建文件夹anim

2.在anim文件夹下创建animation.xml动画文件

3.在animation.xml中描述某种动画的属性

4.在java代码中用AnimationUtils.loadAnimation方法加载动画

5.使用View的startAnimation方法启动动画

渐变动画效果:可以演示一个视图在透明度上的渐变效果。

主要属性:

FromAlpha:动画启始透明度,取值在0.0-1.0之间

toAlpha:动画结束时透明度,取值在0.0-1.0之间

duration:动画从开始到结束的持续时间以毫秒做单位

repeatCount :动画的重复次数,不包括第一次播放

转载于:https://www.cnblogs.com/androidLearn/p/5212798.html

Android学习—补间动画(渐变动画)相关推荐

  1. Android—逐帧、补间、属性动画

    1.Tween Animation 补间动画 这类动画比较简单,一般就是平移.缩放.旋转.透明度,或者其组合,可以用代码或者xml文件的形式,推荐使用xml文件形式,因为可以复用. 四个动画效果实现类 ...

  2. 【Android】补间动画用法最全详解

    本文目录 补间动画概述和分类 各类补间动画实现 xml实现补间动画 透明度动画-AlphaAnimation 缩放动画-ScaleAnimation 位移动画-TranslateAnimation 旋 ...

  3. Android Studio补间动画

    补间动画是给出初始位置和结束位置,中间由系统自动补充的动画 补间动画的配置文件:scale.xml 布局文件:animal_patching.xml main.java sacle.xml <? ...

  4. 系统学习iOS动画 —— 渐变动画

    这个是希望达成的效果: 先创建需要的控件: class ViewController: UIViewController {let timeLabel = UILabel()override func ...

  5. Android学习笔记进阶十一图片动画播放(AnimationDrawable)

    大家平时见到的最多的可能就是Frame动画了,Android中当然也少不了它.它的使用更加简单,只需要创建一个 AnimationDrawabledF对象来表示Frame动画,然后通过addFrame ...

  6. Android学习笔记——用ObjectAnimator平移动画仿微信表情雨的简单实现

    最近需要实现类似微信聊天界面输入文字命中关键字出现Emoji 表情雨的动画效果,自己试着实现了一下,主要就是用 ObjectAnimatior 的 平移 动画,用随机函数控制每个Emoji 的 横,纵 ...

  7. android 实现View的背景色渐变动画

    在安卓里面,动画的背景色渐变(比如又红色变为蓝色)是依靠属性动画来完成的,属性动画大部分情况下是来实现View的运动动画的,因为View的背景也是View的属性之一,所以属性动画自然也就可以让view ...

  8. Android studio 动画---补间动画

    1.新建文件.[注意:文件名只能命名为anim] 2.新建文件 3.在新建的文件中添加代码:[以下代码仅供参考] 3.1.改变动画的透明度: <?xml version="1.0&qu ...

  9. Android帧动画和补间动画

    目录 1.帧动画 (帧动画的资源文件,放在drawable文件夹下) 1.创建一个项目 2.导入资源, 将图片资源放入 mipmap 文件夹下 3.编写资源文件 在drawable文件夹创建 4.在x ...

最新文章

  1. SpringBoot项目优化和Jvm调优(楼主亲测,真实有效)
  2. WPF 中如何使用第三方控件 ,可以使用WindowsFormsHost 类
  3. Python学习:字典
  4. stk在计算机仿真中的应用_浅析仿真技术在激光系统设计中的应用
  5. Insider Dev Tour 2019巡演中国站
  6. 又拍云 php5月18号那,又拍云文档中心
  7. 达摩院里的女Leader,一面温柔似水一面灿烂如阳
  8. (数据库系统概论|王珊)第六章关系数据理论-第一节:为什么要研究关系数据理论
  9. Knowledge Distillation | 知识蒸馏经典解读
  10. promise实现红绿灯
  11. 模拟猜数(POJ2328)
  12. sendRedirect的路径
  13. 任我行打印服务器显示,任我行终极打印
  14. 【Qt】运行报错Could not create directory “E:\xxxx-Debug“
  15. JAVA字符编码:Unicode,GBK,GB2312,UTF-8
  16. 学习 慕课网【 PHP工程师计划】
  17. 将你的Android平板电脑变为笔记本电脑方法
  18. unity 编辑器软件报错 相关
  19. 8421码、5421码、2421码、余3码的学习及转换。
  20. Linux中正则表达式详细命令及代码(附实验笔记)

热门文章

  1. propertychange input change
  2. JavaScript通过RegExp实现客户端验证
  3. SQL Server中利用存储过程来高性能地进行分页
  4. Spring AOP之ThrowsAdvice
  5. 黄金的商品属性,货币属性,金融属性
  6. 生命游戏(Game of Life)描述
  7. cheat sheet for cs221 at stanford: good luck
  8. 来自长辈的5句教导!
  9. 为什么事情执行不下去?
  10. 不再有神的概念,将所有存在称之为文明,这很有意思