1,先看FrameAnimation,此动画是用来实现动态动画就是把一帧帧图片迭代起来

放在drowable中的xml:

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

>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/ben_window_0001"
android:duration="60"
/> <item android:drawable="@drawable/ben_window_0002"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0003"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0004"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0005"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0006"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0007"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0008"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0009"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0010"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0011"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0012"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0013"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0014"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0015"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0016"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0017"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0018"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0019"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0020"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0021"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0022"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0023"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0024"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0025"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0026"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0027"
android:duration="60"
/>
<item android:drawable="@drawable/ben_window_0028"
android:duration="60"
/> </animation-list>

Activity中:

package com.example.frameanimation;

import android.app.Activity;
import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;
import android.view.View;
import android.widget.Button; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
} public void startAnimation(View v)
{ Button btn=(Button)v;
//得到动画对象
AnimationDrawable anim=(AnimationDrawable)btn.getBackground(); //启动动画
anim.start();
} }

这样我点击一个Tomcat就会循环的动

然后是补间动画

先看这些xml文件

<?

xml version="1.0" encoding="utf-8"?>
<alpha
android:fromAlpha="0.1"
android:toAlpha="1"
android:duration="5000" xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 透明度 0-1 0全然透明 1 全然不透明 -->
</alpha>
<?

xml version="1.0" encoding="utf-8"?>
<rotate android:fromDegrees="0"
android:toDegrees="360"
android:duration="500"
android:pivotX="50%"
android:pivotY="50%" android:interpolator="@android:anim/accelerate_interpolator"
android:repeatCount="infinite" android:repeatMode="reverse"
xmlns:android="http://schemas.android.com/apk/res/android">
<!-- repeatCount 反复次数 infinite 无限
repeatMode 反复模式
interpolator 加速器
--> </rotate>
<?

xml version="1.0" encoding="utf-8"?>
<scale android:fromXScale="0.5"
android:fromYScale="0.5" android:toXScale="2"
android:toYScale="2" android:pivotX="50%"
android:pivotY="50%"
android:duration="200"
android:repeatMode="reverse"
android:repeatCount="infinite"
xmlns:android="http://schemas.android.com/apk/res/android"> </scale>
<!--
fromXScale 1 本身状态
-->
<?xml version="1.0" encoding="utf-8"?

>
<translate xmlns:android="http://schemas.android.com/apk/res/android" android:fromXDelta="0"
android:fromYDelta="0" android:toXDelta="0"
android:toYDelta="80%p" android:duration="100"
android:repeatMode="reverse"
android:repeatCount="infinite"
> </translate>

主文件里的xml

无非就是一张图片加上几个button

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" > <ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="84dp"
android:src="@drawable/heart" android:id="@+id/myimg"
/> <Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button2"
android:layout_alignBottom="@+id/button2"
android:layout_alignRight="@+id/myimg"
android:text="缩放"
android:onClick="scale"
/> <Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/myimg"
android:layout_marginLeft="32dp"
android:onClick="alpha"
android:text="alpha" /> <Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button1"
android:layout_alignBottom="@+id/button1"
android:layout_marginRight="35dp"
android:layout_toLeftOf="@+id/button3"
android:onClick="rotate"
android:text="旋转" /> <Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_below="@+id/button1"
android:text="位移动画"
android:onClick="translate"
/> </RelativeLayout>

然后在Activity中调用这些动画

package com.example.tweenanimation;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView; public class MainActivity extends Activity { private ImageView image; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
image = (ImageView) findViewById(R.id.myimg);
} // 运行透明动画
public void alpha(View v) {
// 1.载入动画资源
Animation anim = AnimationUtils.loadAnimation(MainActivity.this,
R.anim.alpha);
// 2.运行动画
image.startAnimation(anim);
} //运行旋转动画
public void rotate(View v) {
Animation anim = AnimationUtils.loadAnimation(MainActivity.this,
R.anim.rotate); image.startAnimation(anim); }
//缩放动画
public void scale(View v) { Animation anim = AnimationUtils.loadAnimation(MainActivity.this,
R.anim.scale); image.startAnimation(anim);
} public void translate(View v) { Animation anim = AnimationUtils.loadAnimation(MainActivity.this,
R.anim.translate); image.startAnimation(anim);
} }

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGM2MzU0MDgxMzY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

Android---06---2中动画效果的更多相关文章

  1. Android Acitivy切换平移动画效果实现

    1.在anim目录下新建anim文件夹,新建tran_in.xml和tran_out.xml分别表示下一页切换进入,和本页切换出去. 即in表示下一页向左平移,out表示同样向左平移至消失. tran ...

  2. 漂亮的Android加载中动画:AVLoadingIndicatorView

    AVLoadingIndicatorView 包含一组漂亮的Android加载中动画. IOS版本:here. 示例 Download Apk 用法 步骤1 Add dependencies in b ...

  3. 【转】Android 实现蘑菇街购物车动画效果

    原文出处:http://blog.csdn.net/wangjinyu501/article/details/38400479 1.思路   目前想到两种方式实现这种效果,一是使用Tween动画,直截 ...

  4. Android开发之View动画效果插补器Interpolator

    插补器Interpolator 官网描述:An interpolator defines the rate of change of an animation. This allows the bas ...

  5. Android 之Activity切换动画效果

    在Activity中Android提供了overridePendingTransition(int enterAnim,int exitAnim)这个方法用于设置Activity之间切换的动画效果.o ...

  6. Android 实现蘑菇街购物车动画效果

    版本号:1.0  日期:2014.8.6 版权:© 2014 kince 转载注明出处   使用过蘑菇街的用户基本上都知道有一个增加购物车的动画效果,此处不详细描写叙述想知道的能够去下载体验一下. 1 ...

  7. Android实现控件动画效果

    MainActivity.java public class MainActivity extends AppCompatActivity { private ImageView iv; privat ...

  8. android dialog加载中动画效果

    //显示动画 dialog = new Dialog(context, R.style.loading); dialog.setContentView(R.layout.loadinglayout); ...

  9. Android 为PopupWindow设置动画效果

    首先定义显示效果的动画文件: <?xml version="1.0" encoding="utf-8"?> <set xmlns:androi ...

  10. Android TextView数字增长动画效果

    某些app上,新进入一个Activity的时候,上面的一个关键性数字(比如金额)会以一个数字不断变大的动画来显示.刚开始的时候,想到的一个方案是:使用Thead+Handler,给定一个动画总时长与刷 ...

随机推荐

  1. bottle框架学习(2):变量定义等

    try: from simplejson import dumps as json_dumps, loads as json_lds except ImportError: # pragma: no ...

  2. js中立即执行函数写法理解

    在理解了一些函数基本概念后,回头看看( function(){…} )()和( function (){…} () )这两种立即执行函数的写法,最初我以为是一个括号包裹匿名函数, 并后面加个括号立即调 ...

  3. Python的Web编程[0] -> Web客户端[1] -> Web 页面解析

     Web页面解析 / Web page parsing 1 HTMLParser解析 下面介绍一种基本的Web页面HTML解析的方式,主要是利用Python自带的html.parser模块进行解析.其 ...

  4. Python的程序结构[1] -> 方法/Method[4] -> 魔术方法 __call__ / __str__ / __repr__

    __call__ 方法 __call__ 是当对象被调用时会调用的方法,允许一个对象(类的实例等)像函数一样被调用,也可以传入参数. 1 class Foo(): 2 def __init__(sel ...

  5. 山东多校联合模拟赛 Day1

    矩形计数(rect) Description 给出圆周上的 \(N\) 个点,请你计算出以这些点中的任意四个为四个角,能构成多少个矩 形. 点的坐标是这样描述的,给定一个数组 \(v[1..N]\), ...

  6. kotlin扩展函数

    kotlin 扩展函数 https://www.kotlincn.net/docs/reference/extensions.html 扩展函数在android中的应用 fun AppCompatAc ...

  7. DML数据操纵语言

    --创建表T_HQ_BM2 --create table t_hq_bm2 as select * from t_hq_bm; commit; --添加行内容 --insert into t_hq_b ...

  8. Mycat查询时出现:Error Code: 1064. can't find any valid datanode

    说明:这个错误是查询时条件字段超过了范围导致的. 解释: 为什么会出现范围问题? 一般在MySQL查询时不会因为字段的值超过了范围而导致的,但是在Mycat中却不是这样认为的,Mycat是由于采用的分 ...

  9. 细说JavaScript对象(4): for in 循环

    如同 in 运算符一样,使用 for in 循环遍历对象属性时,也将往上遍历整个原型链. // Poisoning Object.prototype Object.prototype.bar = 1; ...

  10. AutoCAD中导入图片

    导入图片涉及到两个关键的问题:如何将图片放置到指定的位置或范围内:如何修改图片的路径类型,如相对路径.绝对路径. 本文以AutoCAD 2018位演示截图来源. 1 将图片放置到指定的位置或范围内 ( ...