今、メモアプリを作っていて保存のボタンを作成して関連付けなどはしっかりと行ったのですが、押しても保存されませんでした。問題を切り分けるためにその保存ボタンのところにブレークポイントを設置しデバッグしてみたのですが、ブレークポイントが発動しませんでした。どうすればよろしいのでしょうか。教えていただくようお願いします。
参考にしているサイトがありまして、 https://qiita.com/atsushi_takao/items/b54ba921d48f43e3458b です。
これを参考に自分の環境でビルドしてみたいと思ったのですが、反応しませんでした。
swift
1 2import UIKit 3 4class AddViewController: UIViewController, UITextFieldDelegate, UITextViewDelegate { 5 6 @IBOutlet weak var Title: UITextField! 7 @IBOutlet weak var Text: UITextView! 8 9 override func viewDidLoad() { 10 super.viewDidLoad() 11 // Do any additional setup after loading the view. 12 13 Title.delegate = self 14 Text.delegate = self 15 } 16 17 @IBAction func Save() { //StoryBoard上で関連付けは完了しています 18 if Title.text != "" { 19 if Text.text != "" { 20 let newDiary = Diary.create() 21 newDiary.title = Title.text! 22 newDiary.note = Text.text 23 let today = Diary.changeDateType(date: Date()) 24 newDiary.date = today 25 newDiary.save() 26 self.navigationController?.popViewController(animated: true) 27 } else { 28 SimpleAlert.showAlert(viewController: self, title: "内容がありません", message: "内容を描いてください", buttonTitle: "OK") //別のファイルでAlertの設定は完了しています 29 } 30 } else { 31 SimpleAlert.showAlert(viewController: self, title: "タイトルがありません", message: "タイトルを書いてください", buttonTitle: "OK") //別のファイルでAlertの設定は完了しています 32 } 33 34 } 35} 36
コードは問題なさそうですが、、、
ちゃんとIBActionが設定できているかは、
storyboardのconnections inspectorのスクリーンショットをつけてくれないと
判断できませんが、、、
hameji様、スクリーンショットを追加しました。確認の方をよろしくお願いします。
storyboardでも問題なさそうに見えますね。
コードは手動で打ち込んで、繋いだんですか?
outlet側から作ったら、
@IBAction func save(_ sender: Any) {
}
となると思いますが、、、
もう一度作り直したらどうですか?
あと、
@IBAction func save() {
print("ボタンが押されたよ")
print("Title: :", Tittle.text)
print("text: ", Text.text)
と一番先に入れて、それぞれがきちんと動くかみてみてください。
ボタンが反応しないのと、保存ができないのは別問題んですからね。
hameji様、もう一度Storyboardの方からbuttonの関連付けをやり直して上記のようにprint("ボタンが押されたよ")などとコードを書いたのですが、下のコンソールにはボタンを押しても反応がありませんでした。
回答2件
あなたの回答
tips
プレビュー