ios - UISlider 长按可在 UITableView 中移动它

标签 ios uitableview swift2 uislider

我有一个带有多个自定义单元格的uitableview,问题是我的一个自定义单元格中的UISlider速度很慢我需要按它大约半秒才能移动它我想我可以使用delaysContentTouches 来解决问题,但我不确定这是否是解决方案,如何实现?我认为这是一个焦点问题,因为我尝试做一个简单的项目,一个带有 20 个 slider 的 uitableview,它工作得很好。我该如何解决这个问题?

这是我的代码: 对于 UITableView cellForRowAtIndexPath 方法:

let cell = tableView.dequeueReusableCellWithIdentifier(CurrentFormTableView.CellIdentifiers.SliderCell, forIndexPath: indexPath) as! SliderCell
    cell.delegate = self
    cell.slider.tag = indexPath.row
    cell.display(block)
    cell.selectionStyle = UITableViewCellSelectionStyle.None
    return cell

此处为 slider 单元格:

class SliderCell: UITableViewCell {

    @IBOutlet weak var titleLabel: UILabel!
    @IBOutlet weak var maxLegendLabel: UILabel!
    @IBOutlet weak var minLegendLabel: UILabel!
    @IBOutlet weak var slider: UISlider!
    @IBOutlet weak var answerLabel: UILabel!

    var delegate: QuestionSliderCellDelegate?

    override func awakeFromNib() {
        super.awakeFromNib()
    }

    override func setSelected(selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)
        isFirstResponder()
    }

    @IBAction func slideAction(sender: UISlider) {
        let sliderValue = Int(sender.value)
       print("slider value")
       print(sliderValue)
    }


    func display(block: Block){
        titleLabel.text = block.title
        slider.value = 1.0

    }
}

最佳答案

您应该尝试禁用 UITableView 上的内容延迟触摸。这将使 slider 响应更快,并禁用每次触摸延迟。

为此,请尝试以下代码:

 override func viewDidLoad() {
        super.viewDidLoad()
        yourTableView.delaysContentTouches = false
 }

 func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        for view in tableView.subviews {
            if view is UIScrollView {
                (view as? UIScrollView)!.delaysContentTouches = false
                break
            }
        }
        return numberOfRows
 } 

关于ios - UISlider 长按可在 UITableView 中移动它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37487218/

相关文章:

ios - 如何使用SwiftMongoDB获取所有集合文档?

ios - 将 uibutton 聚焦在 uicollectionviewCell 内

ios - 如何在 Collection View 中加载具有条件的网页 View 和 ImageView ,并在同一部分中具有灵活的高度

ios - UITableView cellForRowAt 与 willDisplay

swift - 使用 Swift 作为脚本语言时导入其他库

ios - Swift 2.0网址发布请求

iphone - 无法使用@interface将对象添加到NSMutableArray

ios - iOS 项目上的命令脚本问题

iphone - UINavigationController:推自己?

ios - 在 iOS Swift2 中读取本地 HTML 文件