У меня есть два сборщика, допустим, один для страны, а другой для городов. Я хочу, чтобы мой выбор городов отображался в зависимости от выбранной страны, которую я могу достичь. Но я также хочу, чтобы пользователь вводил больше стран и городов в watchOS, но не могу найти решение для динамического добавления значений в оба средства выбора, поскольку я использовал оператор switch, как показано ниже.
@IBOutlet weak var picker_country: WKInterfacePicker!
@IBOutlet weak var picker_city: WKInterfacePicker!
var countriesList =["Pakistan","England"]
var cityPakistan = ["Lahore","Islamabad"]
var cityEngland = ["London"]
override func awake(withContext context: Any?) {
super.awake(withContext: context)
var country = [WKPickerItem]()
var city = [WKPickerItem]()
for countries in countriesList{
let items = WKPickerItem()
items.title = String(countries)
country.append(items)
}
for cities in cityPakistan{
let items = WKPickerItem()
items.title = String(cities)
city.append(items)
}
picker_country.setItems(country)
picker_city.setItems(city)
picker_country.setSelectedItemIndex(0)
}
@IBAction func countryPicker(_ value: Int) {
var City = [WKPickerItem]()
let selectedCountry = countriesList[value]
switch selectedCountry {
case "Pakistan":
for city in cityPakistan{
let items = WKPickerItem()
items.title = city
City.append(items)
}
default:
for city in cityEngland{
let items = WKPickerItem()
items.title=city
City.append(items)
}
}
picker_city.setItems(City)
}
Я видел этот блог https://medium.com/@smehta / ios -swift-Creating-a-Dynami c -picker-view-843b3290e7f0 но я полагаю, что watchkit не имеет делегатов-сборщиков.