0

我在 NSURL -> NSstring initWithContentsOfUrl 中寻找“完成或完成”的事情

我找到了“URLResourceDidFinishLoading”,但这似乎已经贬值了

我找不到任何东西,但也许我搜索了错误的东西。

4

1 回答 1

3

如果您在谈论-initWithContentsOfURL:from NSString,它已被弃用

但即使您正在使用它,它也是一种同步方法 - 这意味着您的代码将暂停,直到数据加载到结果NSString对象中:

NSURL *url = [NSURL URLWithString:@"http://google.com"];
NSString *htmlData = [NSString stringWithContentsOfURL:url];
NSLog(@"%@", htmlData); // you have your data loaded here, synchronously.

所以,要明确一点:这是一种不好的做法,原因有两个:

  1. 您正在使用一种已弃用的方法,该方法很可能会在未来的 SDK 版本中被删除,并且;
  2. 您在从网络加载某些内容时冻结了您的 UI,同时没有向用户提供任何反馈。

您需要的可能NSURLRequest是创建您的请求对象并NSURLConnection实际从网络加载它。

于 2010-05-18T20:30:26.063 回答