【发布时间】:2021-12-03 09:19:07
【问题描述】:
我相信我已按照步骤实现 UIPickerView 以显示字符串数组。由于某种原因,titleForRow 中的文本被隐藏了。我似乎选择器视图正在获取数组计数,因为我能够滚动。如果名称,我只是无法获得列表。我正在使用 UIStoryboard 并且所有插座都已连接。任何帮助将不胜感激。
extension SongPlayerViewController: UIPickerViewDataSource, UIPickerViewDelegate {
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return hertzArray.count
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
return hertzArray[row]
}
//when user selects row
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
}
}
class SongPlayerViewController: UIViewController {
let hertzArray = ["432Hz", "528Hz", "174Hz", "396Hz", "417Hz", "639Hz", "741Hz", "852Hz"]
@IBOutlet weak var pickerView: UIPickerView!
@IBOutlet weak var toolBar: UIToolbar!
//when view did load
override func viewDidLoad() {
super.viewDidLoad()
pickerView.dataSource = self
pickerView.delegate = self
}
}
【问题讨论】:
-
pickerView.reloadAllComponents() in viewDidAppear 我想也许它会起作用?或检查您的数据源和委托连接到 viewController
-
pickerView 的高度是多少?
标签: swift uipickerview