这是我使用的代码:
// PickerView Functions
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
return 1
}
//
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent
component: Int) -> Int {
return categoryArray.count // also tried with 5 or other numbers...
}
func pickerView(pickerView: UIPickerView, viewForRow row: Int,
forComponent component: Int, reusingView view: UIView!) -> UIView {
var lab : UILabel!
if let label = view as? UILabel {
lab = label
} else {
lab = UILabel()
}
lab.text = categoryArray[row] // also tried with text like "some test"
lab.backgroundColor = UIColor.clearColor()
lab.sizeToFit()
return lab
}
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
self.categoryLabel.text = categoryArray[row]
}
设置了 PickerViewDelegate
并创建并连接了所有 socket ...
如果我运行这段代码,它不会从 categoryArray
返回任何值,尽管它已经填充了值。我也尝试手动填充 Picker,但这也没有用。可能是什么原因,任何想法?
最佳答案
感谢大家的评论,我找到了问题...我忘记在 viewDidLoad 中将委托(delegate)设置为 self,我只实现了委托(delegate)类,肯定行不通 ;-)
关于ios - PickerView 不显示任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27722048/