公開中のアプリ

[Xcode11・Swift5]メモアプリを作る#18

※この記事は初心者の方や初めてアプリを作る人を対象にしています。
動作環境 Xcode Version 11.4 Swift version 5.2

さて、「メモアプリを作る」も今回で最後になります。
今回はメモが追加や削除がされたらUserDefaultsのデータを更新する方法を説明します。

今回でデータ保存できるようになります。

UserDefaultsのデータを更新しよう

では早速UserDefaultsのデータを更新するコードを書いていきましょう。
今回編集するファイルは「MemoTableViewController.swift」です。

self.userDefaults.set(self.memos, forKey: "memos")

上記のコードをメモが追加、編集された時のメソッドと、削除された時のメソッドの中に追加してあげます。
「self.userDefaults.set」でuserDefaultsにデータをセットできます。
値が「self.memos」でキーが「”memos”」って感じです。

追加する箇所は下記二つのコードです。

@IBAction func unwindToMemoList(sender: UIStoryboardSegue) {
    guard let sourceVC = sender.source as? MemoViewController,
        let memo = sourceVC.memo else {
            return
    }
if let selectedIndexPath = self.tableView.indexPathForSelectedRow {
    self.memos[selectedIndexPath.row] = memo
} else {
    self.memos.append(memo)
}
self.userDefaults.set(self.memos, forKey: "memos")//ここ追加
self.tableView.reloadData()
}
override func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
    if editingStyle == .delete {
        // Delete the row from the data source
        self.memos.remove(at: indexPath.row)
        self.userDefaults.set(self.memos, forKey: "memos")//ここ追加
        tableView.deleteRows(at: [indexPath], with: .fade)
    } else if editingStyle == .insert {
    }
}

シュミレーターで確認して動画のようにデータが保存されていればOKです!

まとめ

今回でメモアプリが完成しました!!
最初の記事に戻って動画を確認してもらい、同じような動作ができていれば無事完成です!

#1から最後まで読んでくれた人はいるんでしょうか、、、( ̄▽ ̄)
自分の備忘録の為もあるとは言え誰も見てくれないと寂しいな〜
もし#1から最後まで読んでくれた人がいましたら一報くれると嬉しいです!!
ありがとうございました!お疲れ様でした!

“[Xcode11・Swift5]メモアプリを作る#18” への6件のフィードバック

  1. 大変参考になりました。
    Windows系とは概念が違うので、とっつきにくいですね。
    しかもSwiftはバージョンが変わると、別言語のように冷たくあしらうようなので、ユーザーは大変ですね。
    ありがとうございました。
    今後とも、ご活躍下さい。

    • コメント凄く嬉しいです!
      ありがとうございます!

      見づらいサイトで申し訳ないです。

      現在、初めてアプリを公開する為にアプリを作成しておりまして無事公開できましたら、ブログを再開しようと思います。

      このサイトも見やすくリニューアルできればと思っています。

      また見に来ていただけると嬉しいです!

  2. #1~18まで拝見させていただきました。
    まだ完全に理解できているわけではないので、もう一周しようかと思います。
    もともとは「題目」と「文章」を記録できるメモアプリの作成を目標としていたので、そちらのヒントにさせていただこうと思います。
    今後もブログを更新を楽しみにしています。
    分かりやすい記事をありがとうございました。

    • コメントありがとうございます!
      コメントをいただけるとブログ書いて良かったと思い励みになります。

      わからない部分がありましたら遠慮なく聞いてもらえればと思います!

      僕も今アプリを作っているのですが、わからない事だらけで日々格闘しております(^^;

      お互い頑張りましょう!

  3. こんばんは!
    ブログすごく参考になりました(*´艸`*)
    初めてまともにアプリができました
    途中注意事項を読み飛ばしてしまって
    エラーが出てるなんで!∑(゚Д゚)てなりながらも
    じっくり読み返すことで間違いに気づいて修正することもできました
    初めはxcodeの表示が英語でわからないことばかりで
    挫折しかけていたのですが、こちらのブログに出会えて
    アプリが完成できて本当に嬉しかったです!
    ありがとうございました٩(๑❛ᴗ❛๑)۶

    • 柴犬おもちさん
      コメントめっちゃ励みになります!ありがとうございます!
      僕もまだまだわからない事ばかりですが、少しでも柴犬おもちさんの役に立てたのならこんなに嬉しし事はありません(T ^ T)

      僕が初めて公開した「超シンプル習慣記録メモ」アプリでもTableViewとか使ってるので良かったら使ってみてください!(宣伝になってすみませんw)
      また質問等、あれば気軽にコメントとか問い合わせしてくれると嬉しいです!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

アプリ