URL에서 오히려 간단한 XML 파일을로드하고 있습니다. 파서가 파일을로드하는 동안 네트워크 활동 표시기를 표시하려고했지만 파싱하는 동안은 분명히 표시하지 않았습니다.[NSXMLParser initcontentsofurl : ...]로드하는 동안 잠급니까?
질문 : URL에서 문서를로드하는 동안 initWithContentsOfUrl : 메소드가 프로그램 실행을 잠그나요? 즉, 아래의 코드가 정확합니까?
이것은 나에게 명백한 것처럼 보이지만, 100 % 확신하고 싶습니다. 당신이 다운로드 진행 상황을 표시하려면
NSString* const urlString = @"...";
NSURL* url = [NSURL URLWithString:urlString];
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
NSXMLParser* parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
아니요, 진행률에는 관심이 없습니다. 완료 시점을 알아야하고 기본적으로 initWithContentsOfUrl이 동기식 또는 비동기식 NSURLConnection과 함께 작동하는지 여부에 관한 질문이 기본적으로 내려집니다. 이것이 실제로 동기이면, initWithContentsOfURL이 반환 된 후 다운로드가 완료되었다고 가정 할 수 있습니다 (아마). – pille
동기식 방법으로 인해 GUI가 다시 그려지지 않으므로 GUI 업데이트 ('[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible : YES]')가 표시되지 않습니다. 이벤트 루프로 돌아갈 때까지 GUI가 다시 그려지지 않습니다. –