`
wangleyiang
  • 浏览: 221668 次
社区版块
存档分类
最新评论

Android 补间(Tween)动画

阅读更多

    补间动画是指定开始和结束的图像状态,自动生成需要显示的过度图像的动画。补间动画又分为四种:移动,缩放,旋转,通明度。

    下面以移动补间动画来做简单说明,效果是把一个ImageView从左上角,向右下方向移动,然后返回到起始点,中间对动画状态进行监听,效果如图:



    下面简述其主要步骤:

    1、定义动画文件:

<translate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="5000"
    android:fromXDelta="0"
    android:fromYDelta="0"
    android:interpolator="@android:anim/accelerate_decelerate_interpolator"
    android:toXDelta="200"
    android:toYDelta="300" />

     说明:

  • android:interpolator:动画渲染器,有三种渲染器可以设置:accelerate_decelerate_interpolator,accelerate_interpolator,decelerate_interpolator,它们分别对应的效果是:开始加速中间减速,一直加速,一直减速。
  • fromXDelta;动画起始位置的X坐标;
  • fromYDelta:动画起始位置的Y坐标;
  • toXDelta:动画结束位置的X坐标;
  • toYDelta:动画结束位置的Y坐标;
  • duration:动画持续时间,单位毫秒。

    2、加载并启动动画:

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.animation.Animation.AnimationListener;
import android.widget.ImageView;

public class TranslateActivity extends Activity implements AnimationListener {
	
	private static final String TAG = "Translate";
	
	private ImageView imageView;
	private Animation translateAnimation;
	
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        imageView = (ImageView) findViewById(R.id.imageView1);
        
        // 装载动画文件
        translateAnimation = AnimationUtils.loadAnimation(this, R.xml.translate);
        
        // 设置动画监听器
        translateAnimation.setAnimationListener(this);
        
        // 设置重复次数
        translateAnimation.setRepeatCount(1);
        
        // 设置重复模式
        translateAnimation.setRepeatMode(Animation.REVERSE);
        
        // 启动动画
//        imageView.setAnimation(translateAnimation);
//        translateAnimation.start();
        
        imageView.startAnimation(translateAnimation);
        
    }

	@Override
	public void onAnimationEnd(Animation animation) {
		Log.i(TAG, "onAnimationEnd");
	}

	@Override
	public void onAnimationRepeat(Animation animation) {
		Log.i(TAG, "onAnimationRepeat");
	}

	@Override
	public void onAnimationStart(Animation animation) {
		Log.i(TAG, "onAnimationStart");
	}
	
}

    修改上面的某些代码,猜想效果,并和实际效果作对比,有时会发现很有趣的现象!:)

 

    通明度动画的XML示例代码:

<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="1000"
    android:fromAlpha="0.0"
    android:interpolator="@android:anim/accelerate_interpolator"
    android:toAlpha="1.0" />

 

    缩放动画的XML示例代码:

<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false" >

    <scale
        android:duration="500"
        android:fromXScale="1"
        android:fromYScale="0.1"
        android:pivotX="50%"
        android:pivotY="50%"
        android:startOffset="100"
        android:toXScale="1"
        android:toYScale="1.0" />

</set>

 

    旋转动画的XML示例代码如下:

<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="10000"
    android:fromDegrees="0"
    android:interpolator="@anim/linear_interpolator"
    android:pivotX="200%"
    android:pivotY="300%"
    android:repeatCount="infinite"
    android:repeatMode="restart"
    android:toDegrees="360" />

 

    3、多说一句:

    使用代码同样可以实现从XML加载动画一样的效果,有兴趣的话,可以试试看!:)

 

  • 大小: 13.3 KB
分享到:
评论

相关推荐

    android补间动画

    在Android开发中,补间动画(Tween Animation)是一种常见的视觉效果技术,用于为视图对象创建平滑的过渡效果。补间动画通过在一段时间内改变特定属性(如大小、透明度、位置或旋转角度)来实现动态效果。下面将详细...

    Android中补间动画TweenAnimation

    在Android开发中,补间动画(Tween Animation)是动画系统的一部分,用于实现对象在屏幕上位置、大小、透明度等属性的变化。补间动画基于帧,通过连续改变对象属性来创建平滑过渡效果,使得视觉上产生动画的效果。...

    Android动画之Tween动画实现

    一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转、平移、放缩和渐变);第二类就是 Frame动画,即顺序的播放事先做好的图像,与gif图片原理类似。 本例子主要实现了Tweene动画,实现了...

    Android 之 Tween补间动画

    Tween动画,又称补间动画,源自传统动画术语,表示在两个关键帧之间进行平滑过渡的过程。在Android中,Tween动画是通过改变View的属性来实现视图的变化,这些属性包括位置、大小、透明度等。这种动画简单易用,适合...

    android Tween动画的xml实现

    Tween动画,又称补间动画,是Android提供的基础动画类型,主要用于对象的平移、旋转、缩放和透明度变化等效果。本篇文章将深入探讨如何通过XML在Android中实现Tween动画。 首先,让我们了解Tween动画的基本原理。...

    android自定义补间动画

    补间动画(Tween Animation)是Android提供的一种基础动画形式,用于平滑地改变一个对象的视觉属性,如位置、大小、透明度等。本资源主要探讨如何在Android中创建自定义的补间动画。 一、补间动画基础 补间动画基于...

    Android帧动画和补间动画总结

    本文将深入探讨两种主要的动画类型:帧动画(Frame Animation)和补间动画(Tween Animation),并提供相应的代码实现示例。 帧动画是通过连续播放一系列静态图像来创建动态效果的一种方式。在Android中,我们可以...

    Android-Animation动画之Tween Animation补间动画

    补间动画(Tween Animation)是Android提供的基本动画类型,它通过对对象的透明度、大小、位置或旋转等属性进行平滑过渡来实现视觉效果。本篇文章将深入探讨Android中的Tween Animation,包括其原理、使用方法以及...

    Android基础——Tween动画、Drawable动画、Property动画、MaterialDesign动画、Trasition动画

    1. Tween动画(补间动画) Tween动画是Android中最基础的动画形式,它通过改变对象的透明度、大小、位置或旋转等属性来实现平滑的过渡效果。Tween动画通过`Animation`类及其子类如`TranslateAnimation`、`...

    Android Tween动画源码

    Tween动画,又称平移动画,是Android提供的基础动画类型,主要用于对象的透明度、缩放、平移和旋转等属性的变化。让我们深入探讨Android Tween动画的源码,理解其工作原理。 首先,`alpha`动画涉及到的是对象的透明...

    Android 百战经典-Android补间动画(Tween)大观园

    在Android开发中,补间动画(Tween Animation)是实现动态效果的一种重要手段,它通过平移、旋转、缩放和改变透明度等属性变化来创建流畅的视觉效果。本篇文章将深入探讨Android补间动画的基本概念、使用方法及其...

    安卓动画效果相关-android开发中的Tween动画动画演示demo。此demo为androidstudio2.0所写.rar

    Tween动画,又称为“补间动画”,它通过在两个关键帧之间插值计算,使对象在一定时间内逐渐改变属性值,从而产生平滑的过渡效果。在Android中,Tween动画主要由`Animation`类及其子类`TranslateAnimation`、`...

    Android 游戏开发之Tween动画的实现

    在Android游戏开发中,Tween动画是一种非常常见的动画形式,它主要用于实现对象的平滑移动、缩放、旋转等效果。Tween动画,源自于图形设计领域,意为“时间插值”,在Android中,它是通过`android.animation....

    Android补间动画

    在Android开发中,补间动画(Tween Animation)是一种常见的视觉效果技术,用于为用户界面增添动态元素,提高用户体验。补间动画得名于“补间”这个概念,它是指通过计算两个关键帧之间的中间状态来生成平滑的过渡...

    android tween动画代码示例及详解

    Tween动画,又称补间动画,是Android提供的基础动画系统,用于在两个关键帧之间平滑地改变对象的属性,如透明度、大小、位置或旋转角度。在本文中,我们将深入探讨如何使用Android Tween动画,并通过具体的代码示例...

    Android---Tween动画

    Android---Tween动画 运用了4种Tween的动画效果,包括: rotate(旋转),scale(伸缩), alpha(透明度),translate(平移) 以及tween(综合4种效果)

    Android 补间动画

    在Android开发中,补间动画(Tween Animation)是一种常见的视觉效果技术,用于为用户界面元素创造动态过渡。本文将深入探讨Android补间动画的四个主要类型:平移、旋转、缩放和渐变,并提供详细实现方法。 首先,...

    Android补间动画小实例

    在Android开发中,补间动画(Tween Animation)是一种常见的视觉效果技术,用于让视图对象在一定时间内平滑地从一种状态过渡到另一种状态。补间动画的核心是改变对象的属性,如位置、大小、透明度等,通过一系列连续...

    Tween动画完全解析

    在Android开发中,Android SDK提供了Tween动画的支持,位于`android.view.animation`包下,包含如TranslateAnimation、ScaleAnimation、AlphaAnimation等类,分别用于处理平移、缩放和透明度的变化。 对于一个Tween...

    Android常见的补间Animation动画集合

    补间Animation(Tween Animation)基于帧动画,通过随着时间的推移改变View对象的属性(如位置、大小、透明度等)来创建流畅的过渡效果。它基于关键帧的概念,系统会自动计算关键帧之间的中间值,使得动画平滑进行...

Global site tag (gtag.js) - Google Analytics