Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 创建NSMutableDictionary,它将在应用程序中的任何位置都可用_Iphone_Ios_Objective C - Fatal编程技术网

Iphone 创建NSMutableDictionary,它将在应用程序中的任何位置都可用

Iphone 创建NSMutableDictionary,它将在应用程序中的任何位置都可用,iphone,ios,objective-c,Iphone,Ios,Objective C,我想拥有一个NSMutableDictionary,它可以从web上提取数据,并且可以从应用程序中的任何视图控制器获得 换句话说,我应该能够在应用程序的任何部分的字典中获取和设置信息 我读过几个解决方案,其中一个是创建一个包含该字典的.h文件,然后将该.h文件添加到.pch中,这样它就可以在任何地方使用 第二个选择是在AppDelegate中创建dict,但是人们说这是一个糟糕的解决方案 请建议最好的方法。谢谢 您可以使用singleton类来共享数据 检查这个 MyManger.h #impo

我想拥有一个
NSMutableDictionary
,它可以从web上提取数据,并且可以从应用程序中的任何视图控制器获得

换句话说,我应该能够在应用程序的任何部分的
字典中获取和设置信息

我读过几个解决方案,其中一个是创建一个包含该字典的.h文件,然后将该.h文件添加到.pch中,这样它就可以在任何地方使用

第二个选择是在
AppDelegate
中创建dict,但是人们说这是一个糟糕的解决方案


请建议最好的方法。谢谢

您可以使用singleton类来共享数据
检查这个

MyManger.h

#import <foundation/Foundation.h>

@interface MyManager : NSObject {
NSMutableDictionary *_dict
}

@property (nonatomic, retain) NSMutableDictionary *dict;

 + (id)sharedManager;  
@end 
你可以像这样从任何地方查字典

   [MyManager sharedManager].dict

您可以使用singleton类来共享数据
检查这个

MyManger.h

#import <foundation/Foundation.h>

@interface MyManager : NSObject {
NSMutableDictionary *_dict
}

@property (nonatomic, retain) NSMutableDictionary *dict;

 + (id)sharedManager;  
@end 
你可以像这样从任何地方查字典

   [MyManager sharedManager].dict

您可以在应用程序委托中创建它,并设置其setter和getter。每次需要访问它时,您都可以创建主委托的实例

AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];

您可以在应用程序委托中创建它,并设置其setter和getter。每次需要访问它时,您都可以创建主委托的实例

AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];

UIMutableDictionary或NSMutableDictionary…伙计,那太尴尬了。我想,我工作太多了:)哈哈……继续努力,伙计:)我觉得你的第二个选择更好。行得通。@Kalpesh不,这是个坏主意。您应该将应用程序逻辑排除在应用程序委托之外。最好的解决方案是创建一个可以从任何地方访问的单例。见下面Anil的答案。这就是你需要做的。UIMutableDictionary或NSMutableDictionary…伙计,那太尴尬了。我想,我工作太多了:)哈哈……继续努力,伙计:)我觉得你的第二个选择更好。行得通。@Kalpesh不,这是个坏主意。您应该将应用程序逻辑排除在应用程序委托之外。最好的解决方案是创建一个可以从任何地方访问的单例。见下面Anil的答案。这就是你需要做的。这听起来很有趣,但因为我还是个新手,现在听起来太复杂了。有没有更深入的教程可以推荐?@Anil谢谢你的示例和代码。我现在接受你的答案,并将尝试在我的应用程序中使用它。但我肯定我会带着问题回来:)@SergeyCatraniuc干杯!!:)@SergeyCatraniuc欢迎:)对于详细的实现,这听起来很有趣,但因为我还是一个新手,现在听起来太复杂了。有没有更深入的教程可以推荐?@Anil谢谢你的示例和代码。我现在接受你的答案,并将尝试在我的应用程序中使用它。但我肯定我会带着问题回来:)@SergeyCatraniuc干杯!!:)@SergeyCatraniuc欢迎……)详细实施