创建一个变量,该变量最终将包含所有方法都要使用的一段数据



我是objective-c的新手,我只是想知道该怎么做?我会创建一个常量并简单地填充它吗?

示例

我有一个NSString*日期。我从互联网上获取了一些数据,现在我在这个变量中有了我想要的日期。我希望能够在任何时候使用这个NSString,而不需要调用在程序中的任何范围内返回它的方法。

提前感谢!

根据答案决定使用singletons。。。

我将把代码放在哪里,以从互联网上检索变量将保存的日期?它会在这里吗?

   static SingletonClass *sharedInstance = nil;
  // Get the shared instance and create it if necessary.
  + (SingletonClass *)sharedInstance {
if (sharedInstance == nil) {
    sharedInstance = [[super allocWithZone:NULL] init];
}
//Put Code here??
 return sharedInstance;
   } 

您可以使用Singleton模式。这是教程。当您定义它时,您可以将变量NSString*date设置为singleton的属性并使用它

编辑如果你只需要从互联网上获取一次数据,请输入你的代码

if (sharedInstance == nil) {  
    sharedInstance = [[super allocWithZone:NULL] init];  
    //here  
}

如果你想在每次访问变量数据时更新它,你需要为这个变量创建getter并放入代码

- (NSString *)myDate {
NSString *date;
//here
return date;
}

如果您所做的只是存储一个日期变量,我建议使用NSUserDefaults。如果使用singleton,那么无论如何都必须在两次启动之间保持数据。NSUserDefaults是一个单例。如果您创建了一个singleton,那么您将创建另一个类,依此类推。

存储:

NSDate *updateDate = [NSDate date];
[[NSUserDefaults standardUserDefaults] updateDate forKey:@"lastUpdateDate"];
[[NSUserDefaults standardUserDefaults] synchronize];

检索:

NSDate *updateDate = [[NSUserDefaults standardUserDefaults] dateForKey:@"lastUpdateDate"];

最新更新