ProgressBarを扱う
横に伸びるProgressBarを表示する
style
属性に ?android:attr/progressBarStyleHorizontal
を設定する。
<ProgressBar
android:id="@+id/progress_bar"
style="?android:attr/progressBarStyleHorizontal"
android:max="100"
android:min="0"
android:layout_width="240dp"
android:layout_height="30dp"/>
進捗を更新する
アニメーションなし
progress
プロパティに値を設定する。
val progressBar = it.findViewById<ProgressBar>(R.id.progress_bar)
progressBar.progress = 0 // アニメーションなしで進捗を0に設定
アニメーションあり
setProgress()
メソッドを使う。
progressBar.setProgress(progressBar.progress + 50, true)
より滑らかでカスタマイズ可能なアニメーションを作成する場合は ObjectAnimator
を使用する。
// 現在の進捗から新しい値へのアニメーションを生成する
val animation = ObjectAnimator.ofInt(progressBar, "progress", progressBar.progress + 50)
animation.duration = 1000 // アニメーションの時間は1秒に設定
animation.interpolator = DecelerateInterpolator() // 終点に近づくにつれて減速させる
animation.start() // アニメーションを開始
最終更新: 2025.9.12