テキストエディタが設置できましたので、次はデータの保存です。

データの保存というと、なんとなく思いつくのはこんな感じ。

① 普通の変数の中に値を入れて、保存
② 環境変数的な変数の中に値を入れて、保存
③ テキストファイルを作って、その中に値を保存
④ データベースを作って、その中に値を保存

で、予想されるそれぞれの特性は、と。

① きっと超お手軽だけど、アプリを再起動したら消えてしまいそうなのが心配。
② こちらもお手軽だけど、設定用っぽいイメージでデータの量が増えると心配。
③ ファイルだからデータ量を気にしないで済みそうだけど、アクセス速度が心配。
④ これがきっと完璧な答えだろうことは薄々感じているけど、作成難易度が心配。

「……オマエ、心配事が多くて大変そうだニャ」

そうなんです。

最終的には④データベース型か③テキストファイル型を目指しつつ、最初は②環境変数型、もとい「UserDefaults」を試してみましょう。

UserDefaultsは昔からある「簡易的なデータベース(配列)」のような機能で、アプリ内で使うデータを保存することができます……が、あくまで少量の「設定データ」を保存する使い方が現在でも前提になっていて、大量のデータを保存する仕組みではないようです。

使い方はとっても簡単、あらかじめ「型」と「キー」と「デフォルト値」を設定しておけば、アプリ内で呼び出したり、上書きすることができちゃいます。

では、編集画面に、「保存ボタン」を作って、編集した文字列で「UserDefaults」を上書き、と。おお、ちゃんと保存されましたね。

実機で確認したところ、アプリを再起動してもデータはそのまま保持されていました。バッチリです。よーし、とりあえず「保存すること」はできましたので、次回はテキストファイル型を試してみましょう。


Apple Developer Documentation
Class > UserDefaults
An interface to the user’s defaults database, where you store key-value pairs persistently across launches of your app.
外部リンクを開く