【Android】SeekBarを実装する方法

Androidアプリでシークバーを設置して使う方法です。

スライドバーと言った方がしっくりきますが、シークバーというみたいです。

シークバー

シークバーはAndroidStudioのwidgetsに含まれているので、Activityに配置します。

AndroidStudioのpalette

Discreteは連続しないシークバーだと思いますが、今回は連続する上の方を設置しました。

次に、コード上で参照できるようにします。

//Gradleのpluginsに追記する必要あり 「id 'kotlin-android-extensions'」
import kotlinx.android.synthetic.main.activity_main.*

Activityに上記のkotlinx.android.をimportすることで、配置した部品が参照できるようになります。

これはとても便利なので、覚えておきたいです。

あとはアクティビティのonCreateの中で好きなようにカスタマイズします。

        // シークバーの初期値を設定
        seekBar.progress = 30
        // シークバーの最大値を設定
        seekBar.max = 100
        seekBar.setOnSeekBarChangeListener(
            object : OnSeekBarChangeListener {
                //ツマミがドラッグされると呼ばれる
                override fun onProgressChanged(
                    seekBar: SeekBar, progress: Int, fromUser: Boolean
                ) {
                    tv_threshold.text = progress.toString()
                }

                //ツマミがタッチされた時に呼ばれる
                override fun onStartTrackingTouch(seekBar: SeekBar) {}

                //ツマミがリリースされた時に呼ばれる
                override fun onStopTrackingTouch(seekBar: SeekBar) {
                    
                }
            })

ツマミの状態によってコードを記載できるので、自分の好きなものを作れますね!

ABOUTこの記事をかいた人

個人アプリ開発者。Python、Swift、Unityのことを発信します。月間2.5万PVブログ運営。 Twitter:@yamagablog