Android Animation

动画在我们的开发中是一个必须要接触的东西,这里从动画的基本使用到进阶分析系统的做下笔记,动画这里我们统一的归类为View动画和属性动画。View动画里面还包括一个特殊点的属性动画,今天看Android的官方文档下面介绍又有了了SpringAnimation类似实现View的弹簧效果的动画,在后面会进行介绍。

View动画

View动画作用在View上面,支持四种动画效果,分别是平移,缩放,旋转,透明度动画。另外帧动画的形式和他们不同。会分开记录。

View动画分类

View动画的四种变换对应这Animation的四个子类:TranslateAnimation,RotateAnimation,ScaleAnimation,AlphaAnimation。这四种动画的Java类和XML形式定义如下表所示:

名称标签子类效果
平移动画< translate >TranslateAnimation移动View
旋转动画< rotate >RotateAnimation旋转View
缩放动画< scale >ScaleAnimation缩放View
透明度动画< alpha >AlphaAnimation改变透明度View透明度

如果我们使用XML来定义View动画,把它放在目录res/anim目录下面。View动画的描述文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="["true"|"false"]"
    android:interpolator="@[package:]anim/interpolator_resource">

    <translate android:fromXDelta="float"
        android:fromYDelta="float"
        android:toXDelta="float"
        android:toYDelta="float"/>
    <rotate android:fromDegrees="float"
        android:toDegrees="float"
        android:pivotX="float"
        android:pivotY="float"/>
    <scale android:fromXScale="float"
        android:fromYScale="float"
        android:toXScale="float"
        android:toYScale="float"/>
    <alpha android:fromAlpha="float"
        android:toAlpha="float"/>

</set>

每个参数的意义咋们就记录一下set标签下面的属性:

  • android:interpolator–动画采用的插值器。通俗的来说这个影响动画播放的速度,可以指定一个速度来播放该动画。
  • android:shareInterpolator–字面意思共享插值器,指集合下面的View是否都遵循同一个插值器。不设置那么子动画就自己指定或者使用默认值。

通过代码应用XML动画

Animation animation = AnimationUtils.loadAnimation(MainActivity.this,R.anim.translate_test);
                mButton.startAnimation(animation);

通过代码创建使用动画

Animation animation = new TranslateAnimation(0,100,0,0);
                animation.setDuration(500);
                mButton.startAnimation(animation);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值