J'ai un pickerView dans lequel il y a beaucoup de sujets. Chaque sujet est une classe comme ceci:Impossible de sélectionner la valeur par défaut de pickerView
class subjects {
var idSubject: String = "";
var nameSubject: String = "";
var notesSubject: String = "";
var colorSubject: String = "";
init(subjectId: String, subjectName: String, subjectNotes: String, subjectColor: String) {
idSubject = subjectId
nameSubject = subjectName
notesSubject = subjectNotes
colorSubject = subjectColor
}
func printSubject(){
print(idSubject," - ",nameSubject," - ",notesSubject," - ",colorSubject)
}
}
Je mis mon pickerView ainsi:
public func numberOfComponents(in pickerView: UIPickerView) -> Int{
return 1
}
public func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int{
return MenuViewController.subjectsArray.count
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
self.view.endEditing(true)
return MenuViewController.subjectsArray[row].nameSubject
}
Je veux sélectionner la ligne d'un sujet particulier, mais je ne peux pas parce qu'avec indexOf
il "Impossible de convertir la valeur de type 'String' type d'argument attendu '(sujets) lancers francs -> Bool'" dans ces lignes de code:
if let index = MenuViewController.subjectsArray.indexOf("Matematica") {
self.subjectsMenu.selectRow(index, inComponent: 0, animated: true)
}
quelqu'un peut me aider?
Quel est le type du tableau 'subjectsArray'? est-ce un tableau de 'sujets '(' [sujets] ')? –