У меня возникают проблемы с соответствием делегату и передачей информации между двумя контроллерами. Я не могу понять, что я делаю неправильно. Я хочу иметь возможность передавать информацию из одного сегментированного элемента управления в CustomCell VC, чтобы получать и отображать его после нажатия кнопки в CreateEvent VC. Вот соответствующий код:Swift Delegate Информация о проезде
CustomCell VC:
class CustomCell: CreateEventVCDelegate {
var ageDescription : String = String() // setup global variable
func sendageDesciptiongetData(data:String) {
print(ageDescription)
}
@IBAction func ageChanged(sender: UISegmentedControl) {
switch age.selectedSegmentIndex {
case 0:
print("Under 18")
var ageDescription = "under 18"
case 1:
print("Over 18")
var ageDescription = "over 18"
case 2:
print("Strictly over 21")
var ageDescription = "strictly over 21"
default:
print("Other")
}
}
}
CreateEvent VC:
protocol CreateEventVCDelegate {
func sendageDescriptiongetData(ageDescription: String)
}
class CreateEventVC: UIViewController {
var delegate: CreateEventVCDelegate?
@IBAction func saveButtonTapped(sender: UIBarButtonItem) {
var ageDescription = ""
delegate!.sendageDescriptiongetData(ageDescription)
}
}
Как вы переходите от одного контроллера к другому? Через segue в раскадровке или программно? –
Я хочу, чтобы иметь возможность передать ageDescription, который выбран из сегментированного элемента управления в другой VC (при нажатии кнопки saveButton) – Kevin
Но как вы переходите от одного VC к другому? Вы создаете его в коде или просто через раскадровки? –