К сожалению, stringWithContentsOfURL
- это синхронный метод, то есть он заблокирует ваш поток, и вы не получите никаких обратных вызовов во время его работы. Это также плохо для пользовательского опыта.
Альтернативой может быть использование NSURLConnection для ручной настройки собственного запроса и использование методов делегата вашего соединения для отображения какого-либо индикатора выполнения. В частности, вы захотите использовать connection:didReceiveData:
и connectionDidFinishLoading:
Как только все данные будут получены, используйте следующую строку для получения вашей строки.
NSString *theString = [[NSString alloc] initWithData:yourData encoding:UTF8StringEncoding];