2011-11-03 3 views
1

XML 문서를 다운로드하고 구문 분석합니다. 이 과정에서 UIProgressView를 업데이트하고 싶습니다. 문서를 파싱하는 백그라운드 스레드가 아니라 주 스레드에서이 작업을 수행해야한다는 것을 알고 있습니다.배경 스레드 -> 업데이트 UI

하지만이 때 내 문제는, : 플로트가 작동하지 않기 때문에

[self performSelectorOnMainThread:@selector(setProgressStr) withObject:[NSString stringWithFormat:@"%f", updateTo] waitUntilDone:NO]; 

내가하는있는 NSString을 통해 보낼 수 있습니다. 하지만 이제 다음 오류가 발생합니다.

-[TDFetch setProgressStr]: unrecognized selector sent to instance 0x6b9a700 

내가 뭘 잘못하고 있니?

+0

가능한 중복 http://stackoverflow.com/questions/4523357/iphone-notification-results-in-unrecognized- 시도 선택기 - 보낸 - 인스턴스) 또한 [아이폰을 인식 할 수없는 선택기] (http://stackoverflow.com/questions/7284116/iphone-unrecognized-selector) –

답변

4

사용하려는 메소드가 인수를 사용하면 콜론이 실제로 부분의 부분에 해당한다는 것을 의미합니다. 선택기를 가져올 때이를 포함시켜야합니다.

@selector(setProgressStr:) 
+0

- "-"나는이 원인을 확인하지만, 그때 변경 생각 이름을 지정하고 콜론을 삭제했습니다. – dododedodonl

2

선택자 이름 뒤에 ':'을 잊어 버린 것 같습니다.

[self performSelectorOnMainThread:@selector(setProgressStr:) withObject:[NSString stringWithFormat:@"%f", updateTo] waitUntilDone:NO]; 
[ "인식 할 수없는 선택기 인스턴스에 전송 ..."에서 아이폰 통지 결과 (의