Android利用RotateAnimation实现旋转变化动画
16lz
2021-01-26
http://www.alnton.com/?p=343
RotateAnimation类是Android系统中的旋转变化动画类,用于控制View对象的旋转动作,该类继承于Animation类。RotateAnimation类中的很多方法都与Animation类一致,该类中最常用的方法便是RotateAnimation构造方法。
【基本语法】public RotateAnimation (float fromDegrees, float toDegrees, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)
参数说明
fromDegrees:旋转的开始角度。
toDegrees:旋转的结束角度。
pivotXType:X轴的伸缩模式,可以取值为ABSOLUTE、RELATIVE_TO_SELF、RELATIVE_TO_PARENT。
pivotXValue:X坐标的伸缩值。
pivotYType:Y轴的伸缩模式,可以取值为ABSOLUTE、RELATIVE_TO_SELF、RELATIVE_TO_PARENT。
pivotYValue:Y坐标的伸缩值。
【实例演示】下面通过代码来演示如何设置一个简单的旋转变化动画效果。
- publicclassfirstActivityextendsActivity{
- /**Calledwhentheactivityisfirstcreated.*/
- @Override
- publicvoidonCreate(BundlesavedInstanceState){//重载onCreate方法
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- finalImageViewimage=(ImageView)findViewById(R.id.imageView1);//ImageView对象
- Buttonbtn1=(Button)findViewById(R.id.button1);//按钮对象
- Buttonbtn2=(Button)findViewById(R.id.button2);
- finalAnimationrotateAnimation=new
- RotateAnimation(0f,360f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
- //设置旋转变化动画对象
- btn1.setOnClickListener(newView.OnClickListener(){//设置监听器
- @Override
- publicvoidonClick(Viewv){
- //TODOAuto-generatedmethodstub
- rotateAnimation.setDuration(3000);//持续时间
- image.setAnimation(rotateAnimation);//设置动画
- rotateAnimation.startNow();//启动动画
- }
- });
- btn2.setOnClickListener(newView.OnClickListener(){//设置监听器
- @Override
- publicvoidonClick(Viewv){
- //TODOAuto-generatedmethodstub
- rotateAnimation.cancel();//取消动画执行
- }
- });
- }
- }
在这段代码中,首先通过RotateAnimation构造方法创建了一个旋转变化的动画对象。然后,在第一个按钮监听器中设置了动画的持续时间,之后启动该动画。在第二个按钮监听器中取消该动画。读者运行这段代码,将看到图片沿如图9.8所示的方向进行旋转。
图9.8 旋转变化动画 |
更多相关文章
- Android活动进出场动画
- android使用libyuv
- android 实现自定义卫星菜单
- Android图形动画概述
- Android开源项目:GifView——Android显示GIF动画
- android之activity平滑水平切换动画
- android fragment+ FragmentTabHost+viewpager 切换状态不保存的
- Android(安卓)Activity切换动画案例
- AndroidのActivity跳转数据通信和跳转动画