[英]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.