
前提・実現したいこと
swift4、xcodeで簡単なのtodoアプリを作っています。
エラーメッセージは起きていなく、シミュレーターは正常に起動するのですが、
alertのtextfieldに入力ができません。
入力ができないというのは、
キーボードを押してもtextfieldには反映されないという状況です。
サンプルコードの方は正常に動作します。
サンプルコードと比べて違いはないのでコードの問題ではないのだと思います。
行き詰まってしまって困っていたので、
お助けいただければとても嬉しいです。
該当のソースコード
swift
1 @IBAction func tapAddBtn(_ sender: Any) { 2 //アラートの設計 3 let alertController = UIAlertController(title: "TODO追加", 4 message: "TODO入力しろぉ", 5 preferredStyle: UIAlertControllerStyle.alert) 6 //アラートの追加 7 alertController.addTextField(configurationHandler: nil) 8 //OKボタンの設計 9 let okAction = UIAlertAction(title: "ok", 10 style: UIAlertActionStyle.default){ (action:UIAlertAction) in 11 if let textField = alertController.textFields?.first { 12 let myTodo = MyTodo() 13 myTodo.todoTitle = textField.text! 14 self.todoList.insert(myTodo, at: 0) 15 self.tableView.insertRows(at: [IndexPath(row: 0, section: 0)], 16 with: UITableViewRowAnimation.right) 17 //TODOリストの保存処理 18 let userDefaults = UserDefaults.standard 19 //data型にシリアライズ 20 let data = NSKeyedArchiver.archivedData(withRootObject: self.todoList) 21 userDefaults.set(data, forKey: "todoList") 22 userDefaults.synchronize() 23 } 24 } 25 //OKボタンの追加 26 alertController.addAction(okAction) 27 //キャンセルボタンの設計 28 let cancelButton = UIAlertAction( 29 title: "CANCEL", 30 style: UIAlertActionStyle.cancel, handler: nil) 31 //キャンセルボタンの追加 32 alertController.addAction(cancelButton) 33 //アラートの表示 34 present(alertController, animated: true, completion: nil) 35 }
バージョン
MacBook (Retina, 12-inch, Early 2016)
OSバージョン10.13.3

同じ環境で、他のプロジェクトを作って、テキストフィールをViewControllerに貼ってみたりして、MACのキーボードから入力できるか試してみたりすると問題点の切り分けができたりしますよ。
機種/OSのバージョンを教えて下さい。
>tyobigoroさん 助言ありがとうございます。新しいプロジェクトを作って試したところ、同じようにmacのキーボードからは入力できませんでした。xcodeの設定?の問題だと考えています。
>fuzzballさん MacBook (Retina, 12-inch, Early 2016),バージョン10.13.3です
いや、シミュレータ側の話です。
>fuzzballさん IOS11.2、Version10.0、機種はiphone8plusです
回答1件
あなたの回答
tips
プレビュー