У меня есть UIPickerView
, отображающий данные из ключей Array
.Вызов клавиш словаря с использованием другого массива
var pokemonData = ["Nidoran", "Clefairy", "Spearow", "Ivysaur", "Gengar", "Arcanine", "Gyarados", "Onix", "Pikachu", "Vaporeon"]
Также у меня есть этот Dictionary
, но я хочу назвать каждую клавишу, чтобы она показывает в метке всякий раз, когда я выбираю что-то на селекторе.
var typeData = [
"Nidoran" : "Type: Poison",
"Clefairy" : "Type: Normal",
"Spearow" : "Type: Normal, Flying",
"Ivysaur" : "Type: Grass, Poison",
"Gengar" : "Type: Ghost, Poison",
"Arcanine" : "Type: Fire",
"Gyarados" : "Type: Water, Flying",
"Onix" : "Type: Rock, Ground",
"Pikachu" : "Type: Electric",
"Vaporeon" : "Type: Water"
]
Как я могу это сделать? Я использую эту функцию сборщика изменить метки
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
pokeLabel.text = pokemonData[row]
}
Моя вторая метка ...
@IBOutlet weak var typeLabel: UILabel!
Я бы предложил альтернативный подход: храните 'typeData', но определяйте' pokemonData' как 'typeData.key'. Таким образом, вам нужно только написать pokemon в одном месте, и оба будут обновлены. – Alexander