4

私は、最初のviewcontrollerでユーザーがその名前の性別と年齢と母国語を提供するように求められるiosアプリに取り組んでいます。次に、アプリ全体でこれらのオブジェクトを使用します。では、すべてのクラスから簡単にアクセスできるようにオブジェクトを格納する最善の方法は何でしょうか?

4

6 に答える 6

3

MySingletonClass などのシングルトン クラスを作成し、変数を定義します。シングルトンオブジェクトを使用して、任意のクラスから変数にアクセスできます。

// MySingleton.h
@interface MySingletonClass : NSObject

{
    //your global variable here
}

// set property for your variable

+ (MySingletonClass*)sharedInstance; // method for getting object of this singleton class

// In MySingleton.m
//synthesize property for your global variable


+ (MySingletonClass*)sharedInstance
{ 

  if ( !sharedInstance)
  {
      sharedInstance = [[UIController alloc] init];

   }
 return sharedInstance;
}

他のクラスでは、この変数にアクセスできます。このコードに従って、MySingletonClass の変数定義にアクセスします

MySingletonClass* sharedInstance = [MySingletonClass sharedInstance]; // get object of MySingletonClass
sharedInstance.yourVariable; // now you can access variable defined in MySingletonClass by this object.

AppDelegate でグローバル変数を定義することもできます (非推奨)。

于 2013-08-27T07:35:27.967 に答える
2

これには aSingletonを使用できます。このようなクラスは 1 つのオブジェクトしか持つことができず、アプリ内のどこからでもアクセスできます。この質問を見てください:シングルトン

isMultiplayerニーズに合わせてプロパティを変更するだけです。

于 2013-08-27T06:47:43.437 に答える