1
当我我们下面的代码只在PickerView
看到问号。 我找不到这个错误。UIPickerView只显示questionmarks
import UIKit
class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {
@IBOutlet weak var dbPicker: UIPickerView!
var dbPickerData: [String] = [String]()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//Connect Data:
self.dbPicker.dataSource = self
self.dbPicker.delegate = self
// Fill dbPicker content
dbPickerData = ["White","Red","Green","Blue"]
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// The number of columns of data
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1;
}
// The number of rows of data
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return dbPickerData.count;
}
// The data to return for the row and component (column) that's being passed in
private func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
return dbPickerData[row];
}
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
{
if(row == 0)
{
self.view.backgroundColor = UIColor.white;
}
else if(row == 1)
{
self.view.backgroundColor = UIColor.red;
}
else if(row == 2)
{
self.view.backgroundColor = UIColor.green;
}
else
{
self.view.backgroundColor = UIColor.blue;
}
}
}
你拖动你的选择器视图,并添加代表和数据来自故事板? –
从'titleForRow'方法中删除'private',并添加'_'作为第一个参数标签,与上面链接的重复答案相同。 –