Objective c 启动时重新加载内容
几天来,我一直在努力了解如何在应用程序启动后立即执行操作 基本上,我想从我的网站下载一个plist,如果用户打开一个开关来确定他是否想在启动时下载新内容 重点是:Objective c 启动时重新加载内容,objective-c,ios,xcode,Objective C,Ios,Xcode,几天来,我一直在努力了解如何在应用程序启动后立即执行操作 基本上,我想从我的网站下载一个plist,如果用户打开一个开关来确定他是否想在启动时下载新内容 重点是: “A”类具有重新加载内容的方法 “B”类有一个开关,如果打开该开关,它会告诉委托在应用程序启动时立即执行重载内容方法 现在,如果类“B”的开关打开,我不知道如何告诉AppDelegate运行类“A”的方法。显然,我需要使用NSUserDefaults,但从那以后我就不知所措了 有人能把事情说清楚吗?或者,有没有更舒适的解决方法?这
- “A”类具有重新加载内容的方法李>
- “B”类有一个开关,如果打开该开关,它会告诉委托在应用程序启动时立即执行重载内容方法
NSUserDefaults
,但从那以后我就不知所措了
有人能把事情说清楚吗?或者,有没有更舒适的解决方法?这里有一篇文章可以帮助您了解应用程序启动期间的流程: 此外,请查看此帖子:
是,您可以使用NSUserDefaults执行此操作 在你的b班
-(void)swithChanged
{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
//check if !null
if(![[defaults objectForKey:@"shouldDownload"]isKindOfClass:[NSNull class]]){
if([(NSNumber*)[defaults objectForKey:@"shouldDownload"]boolValue])
{
[defaults setObject:[NSNumber numberWithInt:0] forKey:@"shouldDownload"];
[defaults synchronize];
}else{
[defaults setObject:[NSNumber numberWithInt:1] forKey:@"shouldDownload"];
[defaults synchronize];
}
}else{
//set your NSUserDefault here for the first time
}
}
在AppDelegate中
- (void)applicationDidBecomeActive:(UIApplication *)application{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
//check if !null
if(![[defaults objectForKey:@"shouldDownload"]isKindOfClass:[NSNull class]]){
if([(NSNumber*)[defaults objectForKey:@"shouldDownload"]boolValue])
{
//you can write the downloadData method in this appDelegate,
//[self downloadData]
//OR
AClass *aClass = [AClass alloc]init];
[aClass downloadData];
}else{
//do not download
}
}else{
//the default behaviour of app, download or not?
}
}
谢谢你的回答!只是一个问题:在AppDelegate中,当您编写[self downloadData]时,我应该初始化我的“a”类,然后执行该方法,对吗!?