[带有rxBinding的setOnSeekBarChangeListener

问题描述 投票:0回答:1

如何使用rx绑定来调用setOnSeekBarChangeListener

我的代码:

    view?.seekBarDisplay?.setOnSeekBarChangeListener(object :
                SeekBar.OnSeekBarChangeListener {
                override fun onProgressChanged(seekBar: SeekBar, 
    progress: Int, fromuser: Boolean) {

                   val backLightValue = (progress / 100f)
                   val layoutParams = activity?.window?.attributes
                   layoutParams?.screenBrightness = backLightValue
                   activity?.window?.attributes = layoutParams
                }

               override fun onStartTrackingTouch(seekBar: SeekBar) {}

               override fun onStopTrackingTouch(seekBar: SeekBar) {}
           })
kotlin seekbar rx-binding
1个回答
0
投票

随着RxBinding 4.0发布,您有4个选择来使用它来实现Seekbar:

  1. SeekBar.changeEvents():订阅此可观察变量,当调用onProgressChangedonStartTrackingTouchonStopTrackingTouchonDispose方法时,您会收到通知。

  2. SeekBar.changes():仅在对搜索栏进行任何更改时通知您。

  3. SeekBar.userChanges():仅当用户自身对搜索栏进行任何更改时才通知您。

  4. SeekBar.systemChanges():仅在系统对搜索栏进行任何更改时通知您。

您可以像其他通常的Observable一样订阅这些功能。

© www.soinside.com 2019 - 2024. All rights reserved.