<Android 基础(二十五)> View Animation
2016-10-16 09:07
393 查看
简介
视图动画,主要包括位移,透明度,旋转和缩放,View本身的属性并没有发生变化,只是在这个视图上添加一些渐变的效果,所以总体而言,视图动画只能实现一些简单的动画效果,属性动画功能更强大。使用
res/anim目录下创建动画资源文件,存放帧动画和渐变动画,主要tag:set, alpha, scale, tranlate, rotate分别对应动画集合,透明动画,缩放动画,位移动画,旋转动画
格式
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@[package:]anim/interpolator_resource" android:shareInterpolator=["true" | "false"] >//子元素是否共享这个插值器 <!--[0.0 , 1.0] --> <alpha android:fromAlpha="float" android:toAlpha="float" /> <!--[0.0, ?] <!-- pivotX,pivotY用来控制缩放的中心点--> <scale android:fromXScale="float" android:toXScale="float" android:fromYScale="float" android:toYScale="float" android:pivotX="float" android:pivotY="float" /> <!-- in pixels relative to the normal position (such as "5"), in percentage relative to the element width (such as "5%"), or in percentage relative to the parent width (such as "5%p")--> <translate android:fromXDelta="float" android:toXDelta="float" android:fromYDelta="float" android:toYDelta="float" /> <!-- android:pivotX, android:pivotY ---- n pixels relative to the object's left edge (such as "5"), in percentage relative to the object's left edge (such as "5%"), or in percentage relative to the parent container's left edge (such as "5%p") --> <rotate android:fromDegrees="float" android:toDegrees="float" android:pivotX="float" android:pivotY="float" /> <set> ... </set> </set>
< scale >
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <scale android:duration="2000"//时常(运行代码不要在这里做注释) android:pivotX="50%" android:pivotY="50%"//缩放中心点为视图的中心 android:fromXScale="1.0"//起点大小 android:fromYScale="1.0" android:toXScale="2.0"//目标大小 android:toYScale="2.0" /> </set>
< alpha>
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="2000"//时常 android:fromAlpha="1.0"//起始透明度 android:interpolator="@android:anim/accelerate_decelerate_interpolator"//插值 android:toAlpha="0.0" />//目标透明度 </set>
< rotate>
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <rotate android:duration="2000"//时常 android:fromDegrees="0"//起始角度 android:interpolator="@android:anim/decelerate_interpolator"//插值 android:pivotX="50%" android:pivotY="50%"//旋转中心点为视图中心 android:toDegrees="180" />//目标角度 </set>
< translate>
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:duration="2000"//时常 android:fromXDelta="0" android:fromYDelta="0"//起始位置相对于视图的位移 android:interpolator="@android:anim/accelerate_interpolator" android:toXDelta="300" android:toYDelta="300" />//目标位置相对于视图的位移 </set>
< set>
将上面的代码各种渐变动画全部防止在< set >tag下,实现共同效果备注
代码中加载动画,例如旋转动画:rotateAnim = AnimationUtils.loadAnimation(this, R.anim.rotate_anim); imageView.startAnimation(rotateAnim);
相关文章推荐
- <Android 基础(二十五)> View Animation
- <Android 基础(四)> RecyclerView
- <Android 基础(七)> DrawerLayout and NavigationView
- <Android 基础(七)> DrawerLayout and NavigationView
- <Android 基础(十七)> ViewPager介绍
- <Android 基础(三十五)> RecyclerView多类型Item的正确实现姿势
- <Android 基础(四十四)> View事件分发机制
- <Android 基础(十四)> selector
- android基础---->WebView的使用
- Android 动画基础——视图动画(View Animation)
- <Android 基础(十三)> shape
- <Android 基础(九)> Ndk配置与Demo
- <Android 基础(十五)> Alert Dialog
- <Android学习日志>自定义View-正五边形(蜘蛛网雷达效果)
- <Android 基础(十三)> shape
- <Android 基础(十七)> ViewPager
- <Android 基础(十二)> TextInputLayout,让输入框更有灵性
- <50 android hacks>中的卡牌问题---自定义ViewGroup
- <Android 基础(三)> MVP模式
- <Android 基础(十五)> Alert Dialog