Android---06---2中动画效果
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中动画效果的更多相关文章
- Android Acitivy切换平移动画效果实现
1.在anim目录下新建anim文件夹,新建tran_in.xml和tran_out.xml分别表示下一页切换进入,和本页切换出去. 即in表示下一页向左平移,out表示同样向左平移至消失. tran ...
- 漂亮的Android加载中动画:AVLoadingIndicatorView
AVLoadingIndicatorView 包含一组漂亮的Android加载中动画. IOS版本:here. 示例 Download Apk 用法 步骤1 Add dependencies in b ...
- 【转】Android 实现蘑菇街购物车动画效果
原文出处:http://blog.csdn.net/wangjinyu501/article/details/38400479 1.思路 目前想到两种方式实现这种效果,一是使用Tween动画,直截 ...
- Android开发之View动画效果插补器Interpolator
插补器Interpolator 官网描述:An interpolator defines the rate of change of an animation. This allows the bas ...
- Android 之Activity切换动画效果
在Activity中Android提供了overridePendingTransition(int enterAnim,int exitAnim)这个方法用于设置Activity之间切换的动画效果.o ...
- Android 实现蘑菇街购物车动画效果
版本号:1.0 日期:2014.8.6 版权:© 2014 kince 转载注明出处 使用过蘑菇街的用户基本上都知道有一个增加购物车的动画效果,此处不详细描写叙述想知道的能够去下载体验一下. 1 ...
- Android实现控件动画效果
MainActivity.java public class MainActivity extends AppCompatActivity { private ImageView iv; privat ...
- android dialog加载中动画效果
//显示动画 dialog = new Dialog(context, R.style.loading); dialog.setContentView(R.layout.loadinglayout); ...
- Android 为PopupWindow设置动画效果
首先定义显示效果的动画文件: <?xml version="1.0" encoding="utf-8"?> <set xmlns:androi ...
- Android TextView数字增长动画效果
某些app上,新进入一个Activity的时候,上面的一个关键性数字(比如金额)会以一个数字不断变大的动画来显示.刚开始的时候,想到的一个方案是:使用Thead+Handler,给定一个动画总时长与刷 ...
随机推荐
- bottle框架学习(2):变量定义等
try: from simplejson import dumps as json_dumps, loads as json_lds except ImportError: # pragma: no ...
- js中立即执行函数写法理解
在理解了一些函数基本概念后,回头看看( function(){…} )()和( function (){…} () )这两种立即执行函数的写法,最初我以为是一个括号包裹匿名函数, 并后面加个括号立即调 ...
- Python的Web编程[0] -> Web客户端[1] -> Web 页面解析
Web页面解析 / Web page parsing 1 HTMLParser解析 下面介绍一种基本的Web页面HTML解析的方式,主要是利用Python自带的html.parser模块进行解析.其 ...
- Python的程序结构[1] -> 方法/Method[4] -> 魔术方法 __call__ / __str__ / __repr__
__call__ 方法 __call__ 是当对象被调用时会调用的方法,允许一个对象(类的实例等)像函数一样被调用,也可以传入参数. 1 class Foo(): 2 def __init__(sel ...
- 山东多校联合模拟赛 Day1
矩形计数(rect) Description 给出圆周上的 \(N\) 个点,请你计算出以这些点中的任意四个为四个角,能构成多少个矩 形. 点的坐标是这样描述的,给定一个数组 \(v[1..N]\), ...
- kotlin扩展函数
kotlin 扩展函数 https://www.kotlincn.net/docs/reference/extensions.html 扩展函数在android中的应用 fun AppCompatAc ...
- DML数据操纵语言
--创建表T_HQ_BM2 --create table t_hq_bm2 as select * from t_hq_bm; commit; --添加行内容 --insert into t_hq_b ...
- Mycat查询时出现:Error Code: 1064. can't find any valid datanode
说明:这个错误是查询时条件字段超过了范围导致的. 解释: 为什么会出现范围问题? 一般在MySQL查询时不会因为字段的值超过了范围而导致的,但是在Mycat中却不是这样认为的,Mycat是由于采用的分 ...
- 细说JavaScript对象(4): for in 循环
如同 in 运算符一样,使用 for in 循环遍历对象属性时,也将往上遍历整个原型链. // Poisoning Object.prototype Object.prototype.bar = 1; ...
- AutoCAD中导入图片
导入图片涉及到两个关键的问题:如何将图片放置到指定的位置或范围内:如何修改图片的路径类型,如相对路径.绝对路径. 本文以AutoCAD 2018位演示截图来源. 1 将图片放置到指定的位置或范围内 ( ...