以编程方式设置UISlider不响应输入

时间:2017-10-05 18:37:24

标签: xcode uislider

我正在尝试以编程方式设置UISlider但无法使其工作。一方面slider.addTarget()完美无缺。当我移动滑块时,函数rotateSlider(_:)被完美地调用。 另一方面,当我尝试以编程方式设置起始值时,它不会移动句柄。此外,如果我尝试使用slider.isHidden = true隐藏滑块,则不会发生任何事情,也不会从视图中删除它。

var slider1: UISlider {
        let frame = CGRect(x: 0, y: 0, width: 300, height: 40)
        let slider1 = UISlider(frame: frame)
        slider1.center = CGPoint(x: Int(self.view.frame.width) / 2, y: Int(self.view.frame.height) / 2)
        slider1.minimumValue = -3
        slider1.maximumValue = 3
        slider1.addTarget(self, action: #selector(self.rotateSlider(_:)), for: .allTouchEvents)
        return slider1
    }


@objc func rotateSlider(_ sender: UISlider) {
    print("rotated")
}

override func viewDidLoad() {
    super.viewDidLoad()

    self.view.addSubview(slider1)
    slider1.setValue(1.0, animated: true) // This does not work
    slider1.isHidden = true // This does not work
}

我知道我失踪了是一件微不足道的事情吗?!

感谢。

0 个答案:

没有答案