浅学android 动画

本文详细介绍了在UI设计中如何使用XML文件中的动画来创建动态效果,包括透明度、尺寸缩放、位置移动和旋转动画,并提供了XML代码示例。

现在很多app都运用了动画,所有动画也是UI要学的一部分。不说太多,进入主题。
一,Animation使用xml文件中的动画:首先在资源文件res下建立一个anim文件存放xml动画:

1,alpha:渐变透明度动画
2,scale:渐变尺寸缩放动画
3,translate:位置移动动画
4,rotate:旋转动画

ps:共有的属性:
1,duration:动画播放的时间,毫秒为单位
2,fillAfter:设置为true,动画转化在动画结束后为应用
3,fillBefore:设置为true,动画转化在动画开始前为应用
4,interpolator:动画插入器,(加速,减速)
5,repeatCount:动画重复次数
6,,repeatMode:顺序播放,倒序播放
7,startOffset:动画之间的时间间隔。

//透明度动画:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
    <alpha
        android:fromAlpha="0.1"
        android:toAlpha="1.0"
        android:duration="2000"
        ></alpha>
</set>

解析alpha的属性:
1,android:fromAlpha=”0.1” 透明度10%
2,android:toAlpha=”1.0” 透明度100%

//缩放动画

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
    <scale 
        android:fromXScale="0.0"
        android:fromYScale="0.0"
        android:duration="3000"
        android:pivotX="50%"
        android:pivotY="50%"
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:toXScale="1.0"
        android:toYScale="1.0"
        android:fillAfter="false"

        />
</set>

解析scale动画属性:
1,android:fromXScale=”0.0”,开始时在X坐标上的伸缩尺寸
2,android:fromYScale=”0.0”,开始时在Y坐标上的伸缩尺寸
3,,android:toXScale=”1.0” 结束时在X坐标上的伸缩尺寸
4,android :toYScale=”1.0”结束时在Y坐标上的伸缩尺寸
5,android:pivotX=”50%” ,分别为伸缩动画相对于X坐标开始位置
6,android:pivotY=”50%”分别为伸缩动画相对于Y坐标开始位置

//位移动画

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
    android:fromXDelta="0"
    android:fromYDelta="0"
    android:duration="2000"
    android:toXDelta="1000"
    android:toYDelta="1000"
    >


</translate>
</set>

解析位移动画的属性:
1,android:formXDelte ,开始时X的坐标
2,android :fromYDelte,开始时Y的坐标
3,android :toXDelte:结束时X的坐标
4,android :toYDelte:结束时Y的坐标
//旋转动画

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <rotate 
        android:fromDegrees="0"
        android:toDegrees="360"
        android:pivotX="0"
        android:pivotY="0"
        android:duration="2000"
        android:interpolator="@android:anim/accelerate_interpolator"
        />


</set>

解析Rotate动画属性
1,android:fromDegress 开始的角度
2,android:toDegress 结束的角度
3,android:pivoX 旋转动画相对于X坐标
4 android:pivoY:旋转动画相对于Y坐标

在代码中实现:
Animation animation=AnimationUtils.loadAnimation(this,R.anim.alpha);
img.startAnimation(animation);

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值