2016-12-20 7 views
0

私は自分のアプリで新しいスクリーンを開発しており、私はそれを行う最良の方法をあなたに相談したいと思っていました。 新しい画面は静的なチェックリストになります。ユーザーがステップを完了した「段階的」(行単位)をチェックするようにします。toDoリストのチェックステータスを保存する

私は2ビューコントローラ VC1 =テーマ静的リストに各ステップ にリンク VC2 =ステップ静的リストを持っている - >あなたはVC1.Theme1をクリックし、それがVC2.step1,2,3などを表示します。..静的なテーブルビューで

私は何をしたいです:「メモリに保管してください」VC2で 1.チェックステップと VC2のすべてのステップが

もし2用VC1にテーマのステータスを更新してチェックされている2それは簡単な計算ですが、ステップの完了状況を保存する最も良い方法は何でしょうか?私はデータベース(カスタム)または電話のメモリの間に躊躇しています...私は他のオプションがあるか、ベストプラクティスがあるかどうかを知るのに十分な経験がありません。

アドバイスはありますか?

答えて

-1

最も簡単な方法はUserDefaultsです。

私は通常、簡単なデータ保存に使用します。私はそれがあなたのための良い解決策だと思う。たとえば、ステップがチェックされているかどうかを示すBoolsの配列を格納することができます。または、チェックされたステップの数を示すカウンタ(int)を格納し、それをVC2のステップの合計と比較します。

ユーザデフォルトに書き込む方法

let defaults = UserDefaults.standard() 
defaults.set(yourValue, forKey: "valueKey") 

そして読み:

defaults.value(forKey: "valueKey") 

はそれがお役に立てば幸いです。

+0

@Tung Famありがとう、それは多くを助けます。すぐにアクセスするために、DBの呼び出し後にuserDefaultsにいくつかのデータを保存しています。 私はこのストレージ方法が(管理側の)統計情報を作ることができず、システムの復元の場合にデータを保持することができないので、このストレージ方法がどのように良いのだろうかと疑問に思っています。 – Nati

+0

@Natiもしあなたがそれらのデータをあなたのサーバに取得する必要があれば、firebaseを使う方が良いかもしれません。データを保持する場合は、iCloudストレージを使用することができます。ここをクリックしてください:https://developer.apple.com/reference/foundation/nsubiquitouskeyvaluestore –

+0

ありがとう、私はその可能性を知らなかった!良い解決策のように聞こえる!!!ありがとう、よい一日を! – Nati

関連する問題