Eu estou usando uma instância UIPickerView para determinar determinada configuração no meu projeto.
No meu viewDidLoad()
, Inicializo uma matriz que inclui todos os meus dados:
pickerData = ["5 Minutes", "6 Minutes","7 Minutes","8 Minutes","9 Minutes","10 Minutes","11 Minutes","12 Minutes","13 Minutes","14 Minutes","15 Minutes","16 Minutes","17 Minutes","18 Minutes","19 Minutes","20 Minutes","21 Minutes","22 Minutes","23 Minutes","24 Minutes","25 Minutes","26 Minutes","27 Minutes","28 Minutes","29 Minutes","30 Minutes","31 Minutes","32 Minutes","33 Minutes","34 Minutes","35 Minutes","36 Minutes","37 Minutes","38 Minutes","39 Minutes","40 Minutes","41 Minutes","42 Minutes","43 Minutes","44 Minutes","45 Minutes","46 Minutes","47 Minutes","48 Minutes","49 Minutes","50 Minutes","51 Minutes","52 Minutes","53 Minutes","54 Minutes","55 Minutes","56 Minutes","57 Minutes","58 Minutes","59 Minutes","60 Minutes",]
No método delegado UIPickerView, preciso recuperar o elemento one em determinado índice e convertê-lo em um Integer.
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
let minuteIndex = Int(pickerData[row])
print(minuteIndex)
}
Quando eu começo a fazer minha seleção no UIPickView, O console do Xcode imprime todas as seleções como nulas.
Estou muito confuso o que está errado? Como resolver isso, obrigado antecipadamente.
Respostas:
1 para resposta № 1Você poderia usar linha + 5, ignore a string / conteúdo.
let minuteIndex = row + 5
Sem conversões ou conversões.
1 para resposta № 2
Você está tentando lançar uma String que não é Int pura em Int. Tente remover a parte "Minutos" dos seus valores e veja se funciona.
Editar: elenco não converter.