我正在使用具有风扇图像的ImageView。布局资源文件是这样的:

XML布局代码:

<ImageView
android:layout_width="200dp"
android:layout_height="250dp"
android:layout_gravity="center"
android:src="@drawable/f786"
android:id="@+id/imggif"
tools:ignore="ContentDescription" />


android - 我想对ImageView进行编程,使其首先缓慢旋转,然后逐渐增加旋转速度-LMLPHP

在我的活动中,我定义了ImageView并设置了.animate().rotation()方法。如下图所示:

我的MainActivity代码:

public class boostActivity extends AppCompatActivity {

private static int TIME_OUT = 4000;
private  ImageView iv;
private TextView txv;
private TextView mTextView;

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.boost_now);

iv = (ImageView) findViewById(R.id.imggif);
txv= (TextView) findViewById(R.id.textView3);
mTextView = (TextView) findViewById(R.id.tv);

iv.animate().rotation(360).setDuration(2500);


但是风扇图像继续以相同的速度旋转。我希望它逐渐增加其旋转度。我也尝试过这个:

iv.animate().rotation(360).setDuration(3500).rotation(360).setDuration(1000)


但这没有用。

最佳答案

您正确地希望使用animationset来链接动画。

一个例子:

    ObjectAnimator test1 = ObjectAnimator.ofFloat(view, "rotation", 0f, 360f);
    test1.setDuration(1000);

    ObjectAnimator test2 = ObjectAnimator.ofFloat(view, "rotation", 0f, 360f);
    test1.setDuration(500);

    AnimatorSet set = new AnimatorSet();
    set.playSequentially(test1, test2);
    set.start();

关于android - 我想对ImageView进行编程,使其首先缓慢旋转,然后逐渐增加旋转速度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51856728/

10-12 04:11
查看更多