Search code examples
swiftuipickerview

When i launch simulator i have a question mark on my picker view


I need some help. I've been looking for the solution for two days.

enter image description here

class Mam_sEntre_eViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {

    let notes = [0, 1, 2, 3, 4, 5]

    @IBOutlet weak var noteGoutPickerView: UIPickerView!


    @IBAction func validate() {
        validateNoteMam_sEntre_e()
    }


    func numberOfComponents(in pickerView: UIPickerView) -> Int {
        return 1
    }

    func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return notes.count
    }

    private func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> Int? {
        return notes[row]
    }

    private func validateNoteMam_sEntre_e() {
        let noteGoutIndex = noteGoutPickerView.selectedRow(inComponent: 0)
        let noteGout = notes[noteGoutIndex]

    }
}

Solution

  • Change

    private func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> Int? {
        return notes[row]
    }
    

    To

    func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
        return String(notes[row])
    }
    

    Not private, return String not Int. See https://developer.apple.com/documentation/uikit/uipickerviewdelegate/1614384-pickerview