关于Android的Animation使用(XML)
16lz
2021-01-24
官方的两种Animation:
- Tween Animation(渐变动画):通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果
- Frame Animation(帧动画) :顺序播放事先做好的图像
这里仅解释第一种
一、建立:
在Android工程下的res目录中,新建一个anim目录,并在此新建一个testanim.xml,注意:根节点是SET,建立好后是这样的:
<?xml version="1.0" encoding="utf-8"?>
这样就建立好了,各属性介绍如下:
名称 | 属性 | 备注 |
android:shareInterpolator | 是否共享插入器 | 共享时,四个子节点都用一个插入器 |
android:interpolator | 指定一个动画的插入器 | 使用系统资源 |
android:fillEnabled | 当设置为true时,fillAfter和fillBefroe将会都为true,此时会忽略fillBefore 和fillAfter两种属性 | |
android:fillAfter | 该动画转化是否在动画结束后被应用 | boolean |
android:fillBefore | 该动画转化是否在动画开始前被应用 | boolean |
android:repeatMode | 重复模式 | "restart" 或者 "reverse" |
android:repeatCount | 重复次数 | integer |
android:duration | 动画持续时间 | integer |
android:startOffset | 动画时间间隔 | long |
android:zAdjustment | 定义动画z order的变换 | [normal] or [top] or [bottom] |
android:detachWallpaper | 未知 | boolean |
名称 | 属性 | 备注 |
android:toAlpha | 动画结束时的透明度 | float [0,1] 0表示完全透明 1表示完全不透明 |
android:duration | 动画持续时间 | integer |
android:fromAlpha | 动画开始时的透明度 | float [0,1] 0表示完全透明 1表示完全不透明 |
名称 | 属性 | 备注 |
android:fromXScale | 动画开始时,X坐标上的伸缩尺寸 | float,0.0表示收缩到没有、1.0表示正常无伸缩,小于1表示收缩,大于1表示放大 |
android:toXScale | 动画结束时,X坐标上的伸缩尺寸 | 同上 |
android:fromYScale | 动画开始时,Y坐标上的伸缩尺寸 | 同上 |
android:toYScale | 动画结束时,Y坐标上的伸缩尺寸 | 同上 |
android:pivotX | 动画相对于物件的X的开始位置 | [0%,100%],50%表示中间 |
android:pivotY | 动画相对于物件的Y的开始位置 | 0%,100%],50%表示中间 |
android:duration | 同set | 同set |
名称 | 属性 | 备注 |
android:fromXDelta | 动画开始时,X坐标上的位置 | integer 默认以自己为参照物 |
android:toXDelta | 动画结束时,X坐标上的位置 | integer 默认以自己为参照物 |
android:fromYDelta | 动画开始时,Y坐标上的位置 | integer 默认以自己为参照物 |
android:toYDelta | 动画结束时,Y坐标上的位置 | integer 默认以自己为参照物 |
名称 | 属性 | 备注 |
android:fromDegrees | 动画开始时,物件的角度 | 负数:逆时针旋转,正数:顺时针旋转 |
android:toDegrees | 动画结束时,物件的角度(可大于360度) | 同上 |
android:pivotX | 动画相对于物件的X的开始位置 | [0%,100%],50%表示中间 |
android:pivotY | 动画相对于物件的Y的开始位置 | [0%,100%],50%表示中间 |
1,子节点的部分属性没有列出,可以参考根节点属性;
2,各节点可以嵌套使用的;
3,详细的可以查看官方文档:http://developer.android.com/reference/android/view/animation/Animation.html
二,使用
在需要的控件或布局中,加入引用即可
android:layoutAnimation="@anim/testanim"
三、效果
具体要什么的效果,需要调试才能看到
四,其他
暂时没发现什么局限性,xml中配置还是能满足大部分的需求
只是个人有一点没弄明白,我这里给list加了一动画,就是那种向下翻滚的动画,可是每次进来才看见动画,其余时候都没有动画显示出来,后来改在代码中显示的!
更多相关文章
- Android中设置半个屏幕大小且居中的按钮布局 (layout_weight属性
- android的动画相关参数说明
- 【android】scaleType属性与ImagView中图片的显示的关系
- Android(安卓)Reveal圆形Activity转场动画
- android xml解析之Pull
- Android上webview界面切换动画效果
- Android动画之属性动画(Property Animation)(三)
- android 百分比控件的使用
- Android中怎么让你的layout适应屏幕的大小