【Kotlin/Android】SeekBarの使い方!値の取得と色などのデザインの調整

この記事からわかること

  • Android Studio/KotlinSeekBar使い方
  • スライダー機能実装方法
  • サイズ変更方法
  • 取得するには?

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

環境

SeekBarの使い方

AndroidのSeekBarスライダーを動かすことで値を変化させることができるUIを実装するためのViewです。レイアウトファイルには以下のようにSeekBarタグを使用して実装することができます。

【Kotlin/Android】SeekBarの使い方!値の取得と色などのデザインの調整
<SeekBar
  android:id="@+id/seekbar"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:max="100"
  android:progress="50"
  app:layout_constraintBottom_toBottomOf="parent"
  app:layout_constraintEnd_toEndOf="parent"
  app:layout_constraintStart_toStartOf="parent"
  app:layout_constraintTop_toTopOf="parent" />

最大値/最小値

android:max属性で最大値android:min属性で最小値を指定することができます。

android:max="100"
android:min="0"

初期値

android:progress属性で初期値を指定することができます。

android:progress="50"

つまみとバーの色を変える

android:thumbTint属性でつまみの色を変えることがandroid:progressTint属性でバーの色を変えることができます。

android:thumbTint="#FF0000"
android:progressTint="#FF0000"
【Kotlin/Android】SeekBarの使い方!値の取得と色などのデザインの調整

Kotlinで値を取得する

KotlinでSeekBar値を取得するためにはprogressプロパティを参照します。

val seekbar: SeekBar = findViewById(R.id.seekbar)
Log.e("SeekBar", seekbar.progress.toString())

progressプロパティを上書きすることでSeekBarの値をコードから更新することも可能です。

seekbar.progress = 50

イベントリスナー

SeekBar変化を検知して値を取得するにはsetOnSeekBarChangeListenerメソッドを使用してOnSeekBarChangeListener型からデリゲートで取得することができます。取得できるのはそれぞれ以下の通りです。

seekbar.setOnSeekBarChangeListener(
    object : SeekBar.OnSeekBarChangeListener {
       // プログレス値が変化しているとき
        override fun onProgressChanged(p0: SeekBar?, p1: Int, p2: Boolean) {
            Log.e("SeakBar", p1.toString())
        }
        // スライド開始
        override fun onStartTrackingTouch(p0: SeekBar?) {
            
        }
        // スライド終了
        override fun onStopTrackingTouch(p0: SeekBar?) {
            
        }
    }
)

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index