繁体   English   中英

发布 Eureka Slider 时如何操作?

[英]How to do an action when Eureka Slider is released?

我有一个SliderRow ,我想采取行动,但前提是 slider 已发布。

.onChange每次用户滑动一点(当然)时都会执行该操作。 .onCellHighlightChanged不适用于SliderRow

.onSliderReleased的选项会很棒;)

同时我还有其他选择吗?

<<< SliderRow("Barrel") { row in
                    row.title = "Barrel"
                    row.value = Float(UserDefaultsManager.Barrel())
                    row.steps = 19
                    row.displayValueFor = { row in
                       return "\(Int(row ?? 0)) bbl"
                    }

                }.cellSetup { cell, row in
                    cell.imageView?.image = UIImage(systemName: "antenna.radiowaves.left.and.right")
                    cell.slider.minimumValue = 5
                    cell.slider.maximumValue = 100

                }.onChange { row in
                    let Barrel = Double(row.value ?? 50)
                    UserDefaultsManager.set(Barrel: Barrel)

                    ConnectionManager.reconnect()

                }
cell.slider.isContinuous = false

是一半的路,坦克
但它也禁用了 slider 的值更新
所以用户必须“猜测”将设置什么值

让它一起工作

cell.slider.addTarget(self, action: #selector(self.sliderDidEndSliding), for: [.touchUpInside, .touchUpOutside])

@objc private func sliderDidEndSliding() {
   //do some magic
}

UISlider中有一个属性isContinuous来控制行为。

.cellSetup { cell, row in
    cell.imageView?.image = UIImage(systemName: "antenna.radiowaves.left.and.right")
    cell.slider.minimumValue = 5
    cell.slider.maximumValue = 100
    cell.slider.isContinuous = false

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM