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. 第一章:1-10、试在下列条件下比较电路交换和分组交换。要传送的报文共x(bit),从源站到目的站共经过k段链路,每段链路的传播时延为d(s),数据率为C(bit/s)。在电路交换时电路的建立时间为s(s)。在分组交换时分组长度为p(bit),且各结点的排队等待时间可忽略不计。问在怎样的条件下,分组交换的时延比电路交换的要小?

    <计算机网络>谢希仁著第四版课后习题答案答:对电路交换,当t=s时,链路建立: 当t=s+x/C,发送完最后一bit:                 当t=s+x/C+kd,所有的信息到 ...

  2. SPRING CLOUD服务网关之ZUUL

    服务网关是微服务架构中一个不可或缺的部分.通过服务网关统一向外系统提供REST API的过程中,除了具备服务路由.均衡负载功能之外,它还具备了权限控制等功能.Spring Cloud Netflix中 ...

  3. AC日记——Little Elephant and Function codeforces 221a

    A - Little Elephant and Function 思路: 水题: 代码: #include <cstdio> #include <iostream> using ...

  4. AC日记——斐波那契数列 洛谷 P1962

    斐波那契数列 思路: 矩阵快速幂: 来,上代码: #include <cstdio> #include <cstring> #include <iostream> ...

  5. (5)Toad for oracle使用

    版本 toad 11.6 1.表数据颜色设置 误操作后表颜色变成这样 界面选择:view-Toad Optins 选择传统模式可以改回到原来的颜色 2.解决锁表 Database-Monitor-Se ...

  6. 整数划分问题(记忆化搜索和DP方法)

    一. 问题 现在有一正整数N,要把它分为若干正整数之和,问有多少种本质不同的分法? (1)其中最大数不超过m, 有多少种分法? (2)分割后的正整数的数目不超过m个, 有多少种分法? (3)分成最大数 ...

  7. (寒假集训)Watering the Fields (最小生成树)

    Watering the Fields 时间限制: 1 Sec  内存限制: 64 MB提交: 26  解决: 10[提交][状态][讨论版] 题目描述 Due to a lack of rain, ...

  8. Trapping Rain Water (Bar Height) -- LeetCode

    Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...

  9. bzoj 5163: 第k大斜率

    5163: 第k大斜率 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 15  Solved: 4[Submit][Status][Discuss] D ...

  10. bin/...的访问被拒绝被拒绝的问题

    复制到bin.... 对路径bin/.... 的访问被拒绝出现这们的问题,把源码管理器中项目的Bin目录删除,重新获取就要以了