3

我试图JSON在启动期间获取 a 并希望使用 JSON 作为资源。

我提出请求didFinishLaunchingWithOptions,请求看起来像:

NSString *urlAsString = @"myurl";
NSURL *url = [NSURL URLWithString:urlAsString];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL: url];

NSURLResponse *response = nil;
NSError *error = nil;

NSData *data = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:&error];
if ([data length] > 0 && error == nil) {
    NSString* responseString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
    NSLog(@"Data is okay. Size: %lu and result: %@", (unsigned long)[data length], responseString);
}

它运行良好,但我想data从 MyAppDelegate 传递到myViewController. 所以我将使用数据与UILabel.

我究竟应该怎么做?提出请求是AppDelegate错误的吗?

任何帮助都会很棒。

4

1 回答 1

4

第一:在 app-delegate 中提出请求不是很好的解决方案。你应该做一些在后台运行的启动任务,这样你就可以向用户显示一些微调器。第二:您可以将 NSString 变量存储在 appDelegate 中并为其创建 getter(属性)。因此,您可以通过以下方式访问您的 App Delegate 实体

[[UIApplication sharedApplication] delegate];

第三:您可以通过 UIViewController 自定义构造函数或使用属性进行设置。

于 2012-08-31T13:08:26.120 回答