0

NSMutableDictionaryWebからデータを取得し、アプリ内の任意のViewControllerから利用できるようにしたいです。

dictionaryつまり、アプリのどの部分でもその情報を取得して設定できるはずです。

これに対するいくつかの解決策を読みました。1つは、その辞書を含む.hファイルを作成し、その.hファイルを.pchに追加して、どこでも使用できるようにすることです。

そして2番目のオプションはでdictを作成することでしたAppDelegate、しかし人々はそれが悪い解決策であると言いました。

これを行うための最良の方法についてアドバイスしてください。ありがとう!

4

2 に答える 2

4

データの共有にシングルトンクラスを使用できます
このシングルトンクラスを確認してください

MyManger.h

#import <foundation/Foundation.h>

@interface MyManager : NSObject {
NSMutableDictionary *_dict
}

@property (nonatomic, retain) NSMutableDictionary *dict;

 + (id)sharedManager;  
@end 

MyManger.m

#import "MyManager.h"

static MyManager *sharedMyManager = nil;

 @implementation MyManager

 @synthesize dict = _dict;

#pragma mark Singleton Methods  

+ (id)sharedManager {
 @synchronized(self) {
    if(sharedMyManager == nil)
      sharedMyManager = [[super allocWithZone:NULL] init];
 }
return sharedMyManager;
} 

- (id)init {
   if (self = [super init]) {
  dict = [[NSMutableDictionary alloc] init];
   }
 return self;
}   

このようにどこからでも辞書にアクセスできます

   [MyManager sharedManager].dict
于 2013-02-12T11:32:34.360 に答える
-1

アプリデリゲートで作成し、セッターとゲッターを設定できます。アクセスする必要があるたびに、メインデリゲートのインスタンスを作成できます

AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];
于 2013-02-12T11:51:43.443 に答える