2010-05-18 38 views
0

我正在尋找一個「沒有完成,或完成」在NSURL東西 - >的NSString initWithContentsOfUrl檢查做NSURL負載

,我發現「URLResourceDidFinishLoading」但這似乎折舊

我不能」找到任何,但也許我找到了錯誤的東西。

在此先感謝亞歷克斯

回答

1

如果你從NSString談論-initWithContentsOfURL:,它一直deprecated

但是,即使你使用它,這是一個同步的方法 - 這意味着你的代碼將停止,直到數據已經加載到所產生的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. 您在加載網絡內容時凍結了用戶界面,同時不會向用戶提供任何反饋。

你需要的是可能NSURLRequest創建您的請求對象和NSURLConnection實際上從網絡上加載它。

+0

謝謝,很高興知道。 我還沒有看到「initWithContentsOfURL」也被棄用 正是我所期待的。 – 2010-05-19 07:51:13