0
で作成UISliderでトリガーない:イベントは、私はストーリーボードを使用せずに作成したUISliderを持って、次のUICollectionViewCellサブクラスを持ってプログラム的スウィフト3
class ProductDetailPersonalLoanViewCell: UICollectionViewCell {
let valueSlider: UISlider = {
let mySlider = UISlider(frame:CGRect(x: 10, y: 100, width: 300, height: 20))
mySlider.isUserInteractionEnabled = true
mySlider.minimumValue = 0
mySlider.maximumValue = 100
mySlider.isContinuous = true
mySlider.tintColor = UIColor.green
mySlider.addTarget(self, action: #selector(sliderValueDidChange(_:)), for: .valueChanged)
return mySlider
}()
override init(frame: CGRect){
super.init(frame: frame)
setupViews()
}
func setupViews(){
addSubview(valueSlider)
// ....... layout constraints
}
func sliderValueDidChange(_ sender:UISlider!){
print("Slider value changed")
let roundedStepValue = round(sender.value/step) * step
sender.value = roundedStepValue
print("Slider step value \(Int(roundedStepValue))")
}
}
問題は、何らかの理由でイベントがときにトリガされていないことです私は親指を動かすので、私はUISliderの値を使用することができません。誰かがそれを修正する方法を知っていますか?
'setupViews()'関数で 'valueSlider'を初期化しようとしましたか?すべての 'mySlider'コードをそこに移動し、それをサブビューとして追加するようにします。 – Ayazmon