拖动幻灯片时,如何在动态表格视图单元格中的标签上显示幻灯片的当前值?

Posted

技术标签:

【中文标题】拖动幻灯片时,如何在动态表格视图单元格中的标签上显示幻灯片的当前值?【英文标题】:How to show the current value of slide on the label in a dynamic tableview cell when the slide is dragging? 【发布时间】:2019-06-13 14:14:02 【问题描述】:

我创建了一个动态表格视图单元格,里面有一个滑块和一个标签。 我试图在标签上显示滑块的当前值,但我不想通过重新加载表格来做到这一点。 以下是我的代码:

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来实现这个功能,但是除了重新加载tableview我不知道怎么做。 还有什么好办法吗?

【问题讨论】:

欢迎来到 ***。您能否展示一些代码让人们了解您到目前为止所做的工作。 什么是UISlide?由于您的意思可能是UISlider,因此您应该使用真实代码更新您的问题。将实际的相关代码复制并粘贴到您的问题中。当您发布虚假的无效代码时,很难提供帮助。 感谢您的评论。下次我不会犯同样的错误。 【参考方案1】:

您可以在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)"
    

【讨论】:

以上是关于拖动幻灯片时,如何在动态表格视图单元格中的标签上显示幻灯片的当前值?的主要内容,如果未能解决你的问题,请参考以下文章

表格单元格视图中的多个标签

使用自动布局表格视图时如何增加表格视图单元格中的标签高度(取决于文本)?

如何使用自动布局来调整表格视图单元格中的视图大小?

表格视图单元格中的 ImageView 切断标签(自动布局)[关闭]

如何使用自动布局来调整表格视图单元格中的视图?

如何通过单击更改集合视图单元格中的标签颜色