android-animation 动画效果实现(xml形式实现)

1.定义xml动画

1)在anim文件夹下定义xml文件

解释:这个文件夹下面的文件会被默认为动画文件,如果这个文件不存在,需要自己创建

display_result_anim.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" > <!--缩放动画--> <scale
        android:duration="300"
        android:fromXScale="2.0"
        android:fromYScale="2.0"
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:pivotX="50%"
        android:pivotY="50%"
        android:toXScale="1.0"
        android:toYScale="1.0" /> <!--位置移动动画--> <translate
        android:duration="300"
        android:fromYDelta="154.5%"
        android:toYDelta="0"
        android:fromXDelta="-49.5%"
        android:toXDelta="0" >
    </translate> <!--透明度动画--> <alpha
        android:fromAlpha="1"
        android:toAlpha="0.5"
        android:duration="300"
    />

</set>

display_input_anim.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <translate
        android:duration="300"
        android:fromXDelta="0"
        android:fromYDelta="44.1%"
        android:toXDelta="0"
        android:toYDelta="0" />
    <alpha
        android:fromAlpha="0"
        android:toAlpha="1"
        android:duration="300" />

</set>

2.代码中引用

import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.animation.TranslateAnimation;

 private Animation myAnimationInput;
 private Animation myAnimationResult;

 myAnimationInput = AnimationUtils.loadAnimation(context, R.anim.display_input_anim);
 myAnimationResult = AnimationUtils.loadAnimation(context,R.anim.display_result_anim);
 myAnimationInput.setFillAfter(true);
 myAnimationResult.setFillAfter(true);

EditText current = (EditText) getCurrentView();
current.startAnimation(myAnimationInput);
next.startAnimation(myAnimationResult);

知识点总结:

1.android:fromYDelta="44.1%" 它的属性值有三种形式

(1)如果直接写33,表示的是距离这个动画拥有者(edittext)的值为33px,根据+ -决定是在拥有者上还是下 ;如果是写成33%,这个就是表示的,相对于动画拥有者自身尺寸的33%的距离,这个尺寸是动画拥有者最开始设定的尺寸,也就是不加动画的时候的尺寸;如果写成是33%p,那么就是相对于父容器的尺寸了

(2)如果是强制写成33dp的话,会报错,说明不支持这么方式

(3)如果是引用@dimen的话,你会发现引用值的结果是0,也就是没有动画效果,虽然它并不会报错

2.各个动画的效果

三种如上,最后一种是

旋转动画

<rotage
     android:fromDegrees="0"
     android:toDegrees="-360"
     android:pivotX="50%"
     android:pivotY="50%"
    android:duration="3000"
   />

属性就是角度值,正负表示顺逆时针

时间: 2024-08-11 09:53:28

android-animation 动画效果实现(xml形式实现)的相关文章

android animation动画效果的两种实现方式

animation动画效果两种实现方式 注:此例为AlphaAnimation效果,至于其他效果,换一下对象即可. 1..java文件 代码控制 添加并且开始animation动画 //添加动画效果 AlphaAnimation animation = new AlphaAnimation(0.3f, 1.0f); //设置次效果的持续时间 animation.setDuration(2000); //设置动画的监听事件 animation.setAnimationListener(new An

android中xml设置Animation动画效果详解

在 android 中, Animation 动画效果的实现可以通过两种方式进行实现,一种是 tweened animation 渐变动画,另一种是 frame by frame animation 画面转换动画. tweened animation 渐变动画有以下两种类型: 1.alpha 渐变透明度动画效果 2.scale 渐变尺寸伸缩动画效果 frame by frame animation 画面转换动画有以下两种类型: 1.translate 画面转换位置移动动画效果 2.rotate

android中设置Animation 动画效果

在 Android 中, Animation 动画效果的实现可以通过两种方式进行实现,一种是 tweened animation 渐变动画,另一种是 frame by frame animation 画面转换动画,接下来eoe进行讲解. tweened animation 渐变动画有以下两种类型: 1.alpha   渐变透明度动画效果 2.scale   渐变尺寸伸缩动画效果 frame by frame animation 画面转换动画有以下两种类型: 1.translate  画面转换位置

Android Animation动画的xml使用

在Android应用程序,使用动画效果,能带给用户更好的感觉,做动画可以通过XML或Android代码来实现. Animation动画效果的实现可以通过两种方式进行实现,一种是tweened animation (渐变动画),另一种是frame by frame animation (画面转换动画). tweened animation渐变动画有以下两种类型: 1.alpha     渐变透明度动画效果 2.scale    渐变尺寸伸缩动画效果 frame by frame animation

Android Animation动画详解(二): 组合动画特效

前言 上一篇博客Android Animation动画详解(一): 补间动画 我已经为大家介绍了Android补间动画的四种形式,相信读过该博客的兄弟们一起都了解了.如果你还不了解,那点链接过去研读一番,然后再过来跟着我一起学习如何把简单的动画效果组合在一起,做出比较酷炫的动画特效吧. 一. 动画的续播 如题,大家想想,如果一个页面上包含了许多动画,这些动画要求按顺序播放,即一个动画播放完成后,继续播放另一个动画,使得这些动画具有连贯性.那该如何实现呢? 有开发经验或者是逻辑思维的人肯定会想,对

Android Animation 动画Demo

本文主要介绍Android中的Animation动画. Android提供了2中动画:Tween动画和Frame动画. 本文中主要讲解Tween动画,下篇文章中会讲到Frame动画. Tween动画: 通过对View的内容进行一系列的图形变换(包括平移,缩放,旋转,改变透明度)来实现动画的效果,动画效果的定义可以采用XML方式也可以采用编码来做Tween动画(文章最后会给出两种方式动画的源代码Demo). 动画的类型 Xml定义动画使用的配置节点 编码定义动画使用的类 渐变透明度动画效果(简称透

Android Animation 动画Demo(Frame逐帧动画)

上一篇介绍了Animation动画其一:Tween补间动画. 这篇文章接下来介绍Animation另一种动画形式:Frame逐帧动画. Frame动画是一系列图片按照一定的顺序展示的过程,和放电影的机制很相似,我们称为逐帧动画.Frame动画可以被定义在XML文件中,也可以完全编码实现(后面会给出这两种实现方式的源代码Demo). 下面分别介绍: 一.定义在xml中实现: 实现效果图: 源代码: 布局文件:main.xml: <?xml version="1.0" encodin

Android Animation 动画

动画类型 Android的animation由四种类型组成  Android动画模式 Animation主要有两种动画模式:一种是tweened animation(渐变动画) XML中 JavaCode alpha AlphaAnimation scale ScaleAnimation 一种是frame by frame(画面转换动画) XML中 JavaCode translate TranslateAnimation rotate RotateAnimation 如何在XML文件中定义动画

Android Animation动画实战(一): 从布局动画引入ListView滑动时,每一Item项的显示动画

前言: 之前,我已经写了两篇博文,给大家介绍了Android的基础动画是如何实现的,如果还不清楚的,可以点击查看:Android Animation动画详解(一): 补间动画 及 Android Animation动画详解(二): 组合动画特效 . 已经熟悉了基础动画的实现后,便可以试着去实现常见APP中出现过的那些精美的动画.今天我主要给大家引入一个APP的ListView的动画效果: 当展示ListView时,Listview的每一个列表项都按照规定的动画显示出来. 说起来比较抽象,先给大家

android anim 动画效果(转)

动画效果编程基础--AnimationAndroid      动画类型      Android的animation由四种类型组成      XML中    alpha    渐变透明度动画效果    scale    渐变尺寸伸缩动画效果    translate    画面转换位置移动动画效果    rotate    画面转移旋转动画效果        JavaCode中    AlphaAnimation    渐变透明度动画效果    ScaleAnimation    渐变尺寸伸缩