android复习路之tween动画篇
2016-12-11 20:42
337 查看
放大和缩小:
缩小的xml
放大的xml
缩小的xml
<?xml version="1.0" encoding="utf-8"?> <scale xmlns:android="http://schemas.android.com/apk/res/android" android:fromXScale="1.0" android:toXScale="0.0" android:fromYScale="1.0" android:toYScale="0.0" android:pivotX="50%" android:pivotY="50%" android:duration="2000" > <!-- from代表开始的缩放比例 toScale代表结束的缩放比例 pivo代表缩放中心位置 druation 代表播放时间 scale 为缩放标签 --> </scale>
放大的xml
<?xml version="1.0" encoding="utf-8"?> <scale xmlns:android="http://schemas.android.com/apk/res/android" android:fromXScale="0" android:toXScale="1.0" android:fromYScale="0" android:toYScale="1.0" android:pivotY="50%" android:pivotX="50%" android:duration="2000" > </scale>
mian代码:
package com.example.zobject.tween; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.widget.Button; import android.widget.ImageView; public class MainActivity extends AppCompatActivity { Animation animationLittle;//缩小动画 Animation animationBig;//放大动画 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button= (Button) findViewById(R.id.button); Button button1= (Button) findViewById(R.id.button2); final ImageView imageView= (ImageView) findViewById(R.id.imageView); animationLittle= AnimationUtils.loadAnimation(this,R.anim.little);//绑定缩小动画的xml animationBig=AnimationUtils.loadAnimation(this,R.anim.big);//绑定放大动画的xml button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { imageView.startAnimation(animationLittle);//执行缩小动画 } }); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { imageView.startAnimation(animationBig);//执行放大动画 } }); } }
旋转动画:
<?xml version="1.0" encoding="utf-8"?> <rotate xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_decelerate_interpolator" android:fromDegrees="0" android:toDegrees="360" android:pivotY="50%" android:pivotX="50%" android:duration="2000" > </rotate>
<rotate>标签为旋转节点 Tween一共为我们提供了3种动画渲染模式。 android:interpolator="@android:anim/accelerate_interpolator" 设置动画渲染器为加速动画(动画播放中越来越快) android:interpolator="@android:anim/decelerate_interpolator" 设置动画渲染器为减速动画(动画播放中越来越慢) android:interpolator="@android:anim/accelerate_decelerate_interpolator" 设置动画渲染器为先加速在减速(开始速度最快 逐渐减慢) 如果不写的话 默认为匀速运动 android:fromDegrees="+360"设置动画开始的角度 android:toDegrees="0"设置动画结束的角度 这个动画布局设置动画将向左做360度旋转加速运动。
移动动画:
<?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android"
移动动画标签android:fromXDelta="0" 移动的初始位置android:toXDelta="320"移动后的位置android:fromYDelta="0"android:toYDelta="480"android:duration="2000"android:repeatCount="3" 重复次数 如果是永远用infinite ></translate>
透明动画
<?xml version="1.0" encoding="utf-8"?> <alpha xmlns:android="http://schemas.android.com/apk/res/android" android:fromAlpha="1.0" android:toAlpha="0.0" android:repeatCount="infinite" android:duration="2000"> </alpha> <alpha>标签为alpha透明度节点 android:fromAlpha="1.0" 设置动画起始透明度为1.0 表示完全不透明 android:toAlpha="0.0"设置动画结束透明度为0.0 表示完全透明 也就是说alpha的取值范围为0.0 - 1.0 之间动画合集
<set xmlns:android="http://schemas.android.com/apk/res/android"> <rotate android:interpolator="@android:anim/accelerate_interpolator" android:fromDegrees="+360" android:toDegrees="0" android:pivotX="50%" android:pivotY="50%" android:duration="2000" android:repeatCount="infinite" /> <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:repeatCount="infinite" android:duration="2000"> </alpha> <translate android:fromXDelta="0" android:toXDelta="320" android:fromYDelta="0" android:toYDelta="480" android:duration="2000" android:repeatCount="infinite" /> </set>
注:用tween动画的时候需要在res下面创建一个anim文件夹在anim中写动画xml,缩放动画scale, 9f34 旋转动画rotate ,移动动画translate,透明渐变动画alpha,动画合集set。代码中使用动画的方式在第一个旋转动画中有注释,写法都是一样的。由于是动画效果不好放图就不放了。效果是都可以实现的。
相关文章推荐
- 【Android2D游戏开发十四】(未完待续)手把手教你在SurfaceView中照样使用Android 动画—Tween Animation!
- Android动画之Tween动画实战
- android Tween动画 (一)
- Android --- Tween动画示例(代码中定义的动画)
- Android --- Tween动画示例(代码中定义的动画)
- 分析android动画模块之Tween动画(转)
- 【Android】两种动画介绍(Tween动画、Frame动画)
- Android动画效果Animation之Tween实现简单动画
- 关于 android Tween动画 和 frame动画的简单学习
- android Tween动画概括+示例
- android开发(9) 渐变动画演示(Tween Animation)
- Android tweened动画 示例代码
- Android游戏开发之Tween动画的实现(三十二)
- Android动画Animation之Tween用代码实现动画效果
- Android中的动画效果学习之---Tween动画(硬编码方法创建)
- 【Android动画】之Tween动画 (渐变、缩放、位移、旋转)
- Android游戏开发之Tween动画的实现(三十二)
- android tween、frame动画
- android 补间(Tween)动画
- android tween动画