控制android studio中动画的持续时间

yftpprvb  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(323)

我想控制动画在我的应用程序中运行的秒数,但我发现只有两个选项-无限运行或单镜头运行,我希望动画运行不止一次,但有一个结束-即:动画讲话,我希望在某个时候,嘴巴会停止移动。
这是我的动画列表xml:

<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/combi_animation" android:oneshot="false">
    <item android:drawable="@drawable/combi_logo" android:duration="600" />
    <item android:drawable="@drawable/combi_mouth_closed" android:duration="600" />
</animation-list>

还有我的动画代码:

protected void onStart() {
    super.onStart();
    AnimationDrawable rocketAnimation;
    ImageView rocketImage = (ImageView) findViewById(R.id.combi_icon);
    rocketImage.setBackgroundResource(R.drawable.combi_animation);
    rocketAnimation = (AnimationDrawable) rocketImage.getBackground();
    rocketAnimation.start();
}

我想也许会有一个听众,在我决定的一段时间后停止动画。我是说,10秒后动画就会停止。但我找不到合适的方法。怎么做?

lymgl2op

lymgl2op1#

您可以这样做:

new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                rocketAnimation.stop();
            }
        },10*1000);

相关问题