在Android中,如果你想要多次重复播放一个动画,你可以使用Animation
类的setRepeatCount()
方法来设置动画重复的次数。此外,你还可以通过setRepeatMode()
方法来设置动画的重复模式,例如重复播放或者来回播放。
下面是一个简单的例子,展示如何在Android中设置一个动画来多次重复:
首先,你可以在XML中定义一个动画。例如,创建一个名为res/anim/scale_animation.xml
的文件,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="700"
android:fromXScale="1.0"
android:toXScale="1.5"
android:fromYScale="1.0"
android:toYScale="1.5"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="Animation.INFINITE"
android:repeatMode="reverse" />
在这个例子中,repeatCount
设置为 Animation.INFINITE
表示动画将无限重复。repeatMode
设置为 reverse
表示动画会在放大和缩小之间交替。
接下来,在你的Activity或Fragment中,加载这个动画并应用到一个视图上:
import android.os.Bundle;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;
public class AnimationActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_animation);
ImageView imageView = findViewById(R.id.imageView);
Animation scaleAnimation = AnimationUtils.loadAnimation(this, R.anim.scale_animation);
imageView.startAnimation(scaleAnimation);
}
}
确保你的布局文件(如res/layout/activity_animation.xml
)中有一个ImageView
:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/your_image"
android:layout_centerInParent="true"/>
</RelativeLayout>
Animation.INFINITE
。领取专属 10元无门槛券
手把手带您无忧上云