UISlider和UILabel导致无限循环

时间:2017-02-03 16:10:57

标签: ios swift xcode uilabel uislider

我有以下代码,可以为视图创建并添加滑块和标签。一旦我移动滑块,它就会在AppDelegate类中提供一个SIGABRT并进入无限循环。我不明白我做错了什么(如果我只添加滑块它工作正常)

fileNames = QtGui.QFileDialog.getOpenFileNames(self,'Open Images','',selectedFilter='*.dcm')

3 个答案:

答案 0 :(得分:2)

除非您需要进行一些自定义渲染,否则不要覆盖drawRect。将子视图添加到init的末尾。

答案 1 :(得分:2)

如果您的函数采用值,则需要在引用时放置:

slider.addTarget(self, action:"change:", forControlEvents:UIControlEvents.ValueChanged)

答案 2 :(得分:1)

Swift 3 +
自Swift 3+起,选择器声明和实现发生了变化。

slider.addTarget(self, action:#selector(self.change), forControlEvents:UIControlEvents.ValueChanged)

@objc func change(sender: UISlider) {
   value = sender.value
   print("sender.value - \(sender.value)")
 }

另请注意,请从代码中删除drawRect