SeekBar 删除一个选择

SeekBar remove one selection

我有一个从 0 到 12 的搜索栏,但我想让它无法 select 基于其他一些标准的值之一。那可能吗?即他们可以滑过 0-12 但它会跳过 5?有没有更好的 selection 方法?我喜欢搜索栏执行此功能的最小程度,但如果删除 selection 不是一个选项,我会接受其他想法。

简单的方法

bar.setOnSeekBarChangeListener(object : SeekBar.OnSeekBarChangeListener{

        var previousProgress = 0
        val disabled = intArrayOf(3,5,7)

        override fun onProgressChanged(seekBar: SeekBar?, progress: Int, fromUser: Boolean) {
            if (disabled.contains(progress)) seekBar?.progress = previousProgress

        }

        override fun onStartTrackingTouch(seekBar: SeekBar?) {
            previousProgress = seekBar?.progress ?: 0
        }

        override fun onStopTrackingTouch(seekBar: SeekBar?) {
        }

    })