我想使用uipickerview从对象数组中选择一个元素。选择器是隐藏的,只有在我点击文本字段时才会显示。问题是选择器是空的。 这是我正在使用的代码:
import UIKit
class LoginController: UIViewController,UIPickerViewDataSource,UIPickerViewDelegate {
var currStruttura : Struttura?
var lista_strutture : [Struttura] = [Struttura(id: 1, nome: "uno", banner: "", codice: "", tennis: true, registrazione: true, iscrizione: true),Struttura(id: 2, nome: "due", banner: "", codice: "", tennis: true, registrazione: true, iscrizione: true),Struttura(id: 3, nome: "tre", banner: "", codice: "", tennis: true, registrazione: true, iscrizione: true)]
@IBOutlet var struttura: UITextField!
@IBOutlet weak var strutture: UIPickerView!
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
self.struttura.inputView = strutture
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return self.lista_strutture.count
}
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
return self.lista_strutture[row].getNome()
}
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
self.currStruttura = self.lista_strutture[row]
self.struttura.text = self.lista_strutture[row].getNome()
}
}
Struttura.getNome()
返回一个字符串