2011-08-16 17 views
1

iPhone開発の新機能です。あるクラスからの入力を必要とし、別の.mファイルの情報を使用するメソッドがあります。変数とメソッドをappdelegateに格納すると、情報にアクセスできると聞きました。どうやってやるの?また、変数として整数としてUIPickerViewから数値を格納するにはどうすればよいですか?AppDelegateからのメソッドの保存とアクセス

ありがとうございます!

答えて

1

基本的なデータを格納するために、あなたがこれを行うことができ、単純に、より高度なデータストレージCore DataについてNSUserDefaults

//Setting an int 
[[NSUserDefaults standardUserDefaults] setInteger:10 forKey:@"PICKER_VALUE"]; 
//Retreiving an int 
int picker_value = [[NSUserDefaults standardUserDefaults] integerForKey:@"PICKER_VALUE"]; 

を使用することは良いオプションです。

アプリの代理人がアプリ全体でデータを共有するためのすばやく汚れた方法ですが、本番アプリではこの方法を避けてください(すべてのアプリを読む)。 Cocoa with Love has an articleアプリケーションのトップレベルデータの共有についてあなたは簡単にこのトップレベル にすぎ置くことができ、それは次のようになります。一般的 のグローバル変数が怖いとみなされていることを はすぐに同じ理由で怖い取得することができ、あなたのグローバル変数を管理するために、あなたのAppDelegateオブジェクトに依存

大きくて、構造化されていない混乱。この問題は、Big Ball of Mudとよく呼ばれる、逆パターンの です。

+0

はい、ただし、そこにメソッドを格納したり、ユーザー変数をそこに格納する方法はありますか? – Shawn

+0

はい、あなたは正しいです! :)私はあなたの質問のすべてに実際に答えるために私の答えを更新しました。 NSUserDefaultsは、文字列、数値、BOOL、それらのものの配列、それらの辞書も許可します。 – Joe

関連する問題