2016-04-19 6 views
0

私は、最初にユーザーが名前、性別などのようなものをいくつか選択するゲームを持っていたとしましょう。これは、ゲームに使用されたスプライトユーザーを表示し、表示されるテキストを表示します。ゲームにユーザーデータを格納する方法は? (swift、spritekit)

ゲームの1つの領域を離れるたびに、新しいデータを入力するたびに、使用するスプライトと準備するテキストが決まります。ユーザーのデータだけの辞書を使って別のクラスを作成し、新しいエリアに入るたびに呼び出す必要がありますか? ありがとうございます。

+0

はやや好みの問題ですが、表示ルールを扱うオブジェクトからデータを分離することは良いアイデアです。あなたがMVCに慣れていないなら、これはそれを読む良い機会かもしれません。 :) –

+0

@PhillipMillsはそれを行うでしょう! –

+1

次回ユーザーがアプリを開くときにこの情報を保存しますか?あなたはそのプレイ期間にそれを保存したいだけですか? – hamobi

答えて

3

これを行うにはいくつかの方法があります。

永久に保存する必要があるすべてのプロパティ(配列、辞書など)を格納するために、NSCodingでシングルトンのGameDataクラスを使用することをお勧めします。

私はこの方法が好きです。コードを読みやすくし、プロジェクトのどこからでもプロパティにアクセスできるという利点があります。このようにして、icloudのキー値ストレージを簡単に組み込むこともできます。

あなたは、私がどのように簡単な例のために答えたこれらの2つの質問を読むことができ、これは、この

などの周りにもいくつかの良いチュートリアルがあり

SpriteKit: Why does it wait one round for the score to update? (Swift)

Is there a better way to save a custom class to NSUserDefaults than encoding and decoding everything with NSCoder?

見ることができますhttps://www.hackingwithswift.com/read/12/3/fixing-project-10-nscoding

安全にデータを保存するには、keychai n。詳細については、この質問をチェックしてください。それは、クラスの辞書や不動産のかどうか

How secure is NSUserDefaults on iOS 8,9?

関連する問題