Passando uma variável através de um segue? Xcode 8 Swift 3
Então, eu estou criando um despertador. Um controlador de vista é uma vista de tabela. O outro controlador de exibição consiste em um UIDatePicker com um botão de envio. O objetivo é que, quando o usuário clicar no botão enviar, ele salve a data no seletor de datas. Além de salvar a data, ela segue para o controlador de exibição de tabela. Estou tentando exibir o tempo economizado como o rótulo na célula.
Este é o meu código para o controlador de exibição DatePicker. Eu defini a variável fora da função. Então, quando clicarem em enviar, atualize o valor. No entanto, ele não é atualizado quando passa pelas segue.
var myDate = "1:39 PM"
@IBAction func submitDate(_ sender: AnyObject) {
myDate = DateFormatter.localizedString(from: dateOutlet.date, dateStyle: DateFormatter.Style.none, timeStyle: DateFormatter.Style.short)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "save" {
let toViewController = segue.destination as! TableViewController
toViewController.myDate = myDate
}
}
Este é o meu código para o controlador de exibição de tabela. Quando clico em enviar, ele não mostra o rótulo como o horário escolhido no DatePicker. Mostra "13:39". Qual foi o que eu defini inicialmente.
var myDate = "0"
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = Bundle.main.loadNibNamed("TableViewCell", owner: self, options: nil)?.first as! TableViewCell
cell.textLabel?.text = myDate
return cell
}