0
텍스트 필드가 비어 있다면 UIAlertController
에 텍스트 필드에 내용을 입력해야한다는 것을 알려 드리고자합니다. 이제 다음과 같은 코드가 있습니다 :UIAlertController가 잠시 후 자동으로 사라집니다
@IBAction func saveDetails(segue: UIStoryboardSegue) {
let dController = segue.source as? EntryTableViewController
if let text = dController?.bezeichnungTextField.text, text.isEmpty {
let alert = UIAlertController(title: "No description", message: "Please fill out description", preferredStyle: .alert)
let cancelAction = UIAlertAction(title: "OK", style: .default)
alert.addAction(cancelAction)
self.present(alert, animated: true, completion: nil)
}else {
guard let menge = dController?.mengeTextField.text, let bezeichnung = dController?.bezeichnungTextField.text, let kategorie = dController?.categoryButtonOutlet.titleLabel?.text else {return}
self.saveItem(menge: menge, bezeichnung: bezeichnung, kategorie: kategorie)
self.tableView.reloadData()
}
}
실제로 첫 번째 컨트롤러로 돌아가려면 단추를 누르면 작동합니다. 그러나 UIAlertController
은 매우 짧은 순간 만 나타나고 자동으로 사라집니다. 코드에 실수가 있습니까? 아니면 unwind segue
에 UIAlertController
으로 전화 할 수 있습니까?
첫 번째 viewcontroller로 돌아가려면 내 segue를 풀어야합니다. IBAction에서 프로그래밍 방식으로 긴장을 푸는 방법을 설정하려면 어떻게해야합니까? – Mikey
버튼에 IBAction이 있어야하고 그 기능 안에서 텍스트 필드를 확인한 다음'performSegue (withIdentifier : "unwindSegue", sender : nil) 명령을 사용하여 segue를 수행해야합니다. [This (https : //www.andrewcbancroft .com/2015/12/18/working-with-unwind-segues- 프로그래밍 방식의 신속한 방법) 튜토리얼에서는이를 수행하는 방법을 정확하게 보여줍니다. 희망이 도움이 – gasho
당신은 내 하루 했어, 많이 고마워. – Mikey