performSelector를 사용하는 이유와 사용 방법을 알아 내려고 노력했습니다. 나는 Apple Docs을 발견했습니다. 그러나 나는 그것을 완전히 이해할 수 없다.performSelector - iOS를 사용하는 이유와 사용 이유
누구든지이 설명에 나를 도울 수 있습니까?
애플의 문서에서performSelector를 사용하는 이유와 사용 방법을 알아 내려고 노력했습니다. 나는 Apple Docs을 발견했습니다. 그러나 나는 그것을 완전히 이해할 수 없다.performSelector - iOS를 사용하는 이유와 사용 이유
누구든지이 설명에 나를 도울 수 있습니까?
애플의 문서에서:
performSelector : 방법을 사용하면 런타임까지 결정되지 않은 메시지를 보낼 수 있습니다
긴 이야기 :
이당신은 객체에 메시지를 보낼 수 있습니다 객체가이 특정 메소드를 구현하는지 여부에 대한 사전 지식없이. 예를 들어 :
NSString *astring = @"test";
[test dance]; // Doesn't compile
[test performSelector:@selector(dance)]; // Doesn't make sense but compiles
AFAIK, 선택기를 사용하여 우리는 자바, C#을에서했던 것과 callback method
를 선언하는 방법입니다 ... 비동기 계산을 할 라이브러리 A를 개발하고 그 결과 때마다를 반환한다고 가정하자 끝났어. 개발 시간에 계산을 완료 할 때마다 호출해야하는 콜백 메소드를 알지 못합니다. 따라서 라이브러리에 selector
을 입력 매개 변수로 가져오고 나중에 performSelector
을 사용하여 콜백 메소드를 호출 할 수 있습니다.
희망이 도움이됩니다.
고맙습니다. 그게 말이 되네. 메소드를 구현하는 객체에서 performSelector를 어디에서 사용할 것인지 예를 들어 주시겠습니까? 예를 들어 – learner2010
당신이 백그라운드에서 방법을 실행하려는 : '[자기 performSelectorInBackground : @selector (MyMethod라는) withObject : 무기 호] 답장을' – Alladinian
감사합니다. 그래서 언제 performSelector를 그냥 메서드를 호출하는 것에 비해 사용합니까? – learner2010