如何在RotationAnimation中控制图像的旋转音量?

时间:2013-09-25 12:03:20

标签: android rotation

我正在创建一个Android应用程序,其中旋转的光盘在媒体播放器播放音乐时不断旋转并在暂停时停止... 问题是当我在setDuration()方法中增加旋转持续时间时,速度会降低...... 我想知道如何控制旋转量

我的代码如下......

    dialer2 = (ImageView) findViewById(R.id.imageView1);
    mp2 = new MediaPlayer();

    public void onPlay1(View v)
    {
     Button playPause = (Button)v;
    if(mp2.isPlaying()){
if(mp2 != null){
     mp1.pause();
playPause.setText("Play");
dialer2.clearAnimation();
}
}else{
if(mp2 != null){
mp2.start();
playPause.setText("Pause");
load_animations2();
}
}
}


     void load_animations2()
     {
     RotateAnimation ranim = new RotateAnimation(0f, 360f, Animation.RELATIVE_TO_SELF,      0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
         ranim.setDuration((mp2.getDuration() - mp2.getCurrentPosition()));
         ranim.setInterpolator(new LinearInterpolator());

         ranim.setFillAfter(true);
         ranim.setFillEnabled(true);
         dialer2.startAnimation(ranim);

    }

1 个答案:

答案 0 :(得分:0)

我引用:new RotateAnimation(0f, 360f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);

请参阅docs

在那里,你会看到那是因为你试图在更长的时间内旋转相同的数量!

如果您希望速度保持不变,则需要按比例放大旋转量。