在Android中,要實現ProgressDrawable的進度動畫,可以使用ObjectAnimator
或者ValueAnimator
ProgressBar
控件: android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="100" />
ValueAnimator
對象,設置動畫的起始值和結束值,然后設置動畫的持續時間。接著,為ValueAnimator
設置一個更新監聽器,用于更新ProgressBar
的進度值。最后,調用start()
方法啟動動畫。import android.animation.ValueAnimator;
import android.os.Bundle;
import android.widget.ProgressBar;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ProgressBar progressBar = findViewById(R.id.progressBar);
ValueAnimator animator = ValueAnimator.ofInt(0, 100);
animator.setDuration(3000); // 設置動畫持續時間為3秒
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
int progress = (int) animation.getAnimatedValue();
progressBar.setProgress(progress);
}
});
animator.start();
}
}
這樣,當應用運行時,ProgressBar
將會顯示一個從0%到100%的進度動畫,動畫持續時間為3秒。你可以根據需要調整動畫的持續時間和進度范圍。