UITextFieldに入力した値をmanagerクラスに保存したいのですが、予測変換で入力した後に確定ボタンを押さずに別画面に遷移をすると予測変換前の値しか保存されません。
何か解決策はあるのでしょうか?
Swift
1 2import UIKit 3 4class mainCell: UITableViewCell, UITextFieldDelegate { 5 @IBOutlet weak var myText: UITextField! 6 7 func cellDisplay(indexNum: IndexPath){ 8 let manager = mainManager.shared 9 self.myText.text = manager.myItems[indexNum.row] as? String 10 self.myText.tag = indexNum.row 11 self.myText.delegate = self 12 } 13 14 15 func cellDisplay(indexNum: IndexPath, text: String){ 16 self.myText.text = text 17 self.myText.tag = indexNum.row 18 self.myText.delegate = self 19 } 20 21 func textFieldShouldEndEditing(_ textField:UITextField) -> Bool { 22 print("キーボードを閉じる前") 23 let manager = mainManager.shared 24 manager.myItems[textField.tag] = textField.text! 25 return true 26 } 27 func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { 28 print("変更中") 29 let manager = mainManager.shared 30 manager.myItems[textField.tag] = textField.text! 31 return true 32 } 33 34 func textFieldShouldReturn(_ textField: UITextField) -> Bool { 35 textField.resignFirstResponder() 36 return true 37 } 38} 39
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。