Как показать текущее значение слайда на метке в динамической ячейке таблицы, когда слайд перетаскивается? - PullRequest
0 голосов
/ 13 июня 2019

Я создал динамическую ячейку таблицы с ползунком и надписью внутри. Я пытаюсь показать текущее значение ползунка на метке, но я не хочу делать это путем перезагрузки таблицы. Вот мой код:

class SlideControl:UITableViewCell{
    @IBOutlet weak var slide_1:UISlide!
    @IBOutlet weak var label_1:UILabel!
}

cell.slide_1.addTarget(nil,action:#selector(valueChanging(sender:)),for:.ValueChanged);

@objc func valueChanging(sender:UISlide){
    //???
}

Я пытался выполнить эту функцию с помощью addTarget, но я не знаю, как это сделать, кроме как перезагрузить просмотр таблицы. Есть ли другой хороший способ?

1 Ответ

0 голосов
/ 13 июня 2019

Вы можете добавить цель в класс SlideControl и изменить текст метки в методе valueChanging

class SlideControl:UITableViewCell{
    @IBOutlet weak var slide_1:UISlider!
    @IBOutlet weak var label_1:UILabel!
    override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
        super.init(style: style, reuseIdentifier: reuseIdentifier)
        commonInit()
    }
    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        commonInit()
    }
    func commonInit() {
        slide_1.addTarget(nil,action:#selector(valueChanging(sender:)),for:.valueChanged)
    }
    @objc func valueChanging(sender:UISlider){
        label_1.text = "\(sender.value)"
    }
}
...