sprite builder를 통해 버튼을 눌러 호출하는 다음 메소드를 사용하고 있습니다.작업이 완료 될 때까지 "disable"버튼 -> 메서드
- (void)method {
//static dispatch_once_t pred; //
//dispatch_once(&pred, ^{ // run only once code below
[self performSelector:@selector(aaa) withObject:nil afterDelay:0.f];
[self performSelector:@selector(bbb) withObject:nil afterDelay:1.f];
[self performSelector:@selector(ccc) withObject:nil afterDelay:1.5f];
[self performSelector:@selector(ddd) withObject:nil afterDelay:4.f];
[self performSelector:@selector(eee) withObject:nil afterDelay:4.5f];
CCLOG(@"Received a touch");
//}); //run only once code above
}
위의 코멘트에서 볼 수 있듯이 한 번 실행 해 보았습니다. 잘 작동하지만 사용자가이 장면으로 돌아 오면 앱을 다시 시작할 때까지 사용할 수 없습니다. 어떻게하면이 메서드가 처음 수행 될 때까지 두 번째로 실행되지 않도록 차단할 수 있습니다. 코드가 거칠다는 것을 알고 있습니다. 나는 여기서 배우고 있습니다 ....
감사합니다.
당신이 몇 가지 문헌을 읽고 올바른 방향으로 날 지점 수 있습니다. 나는 그것을 볼 수 없다. 감사. – user2800989
@ user2800989 예제를 추가했습니다. – nhgrif
답장을 보내 주셔서 감사합니다. 그것은 많은 도움이되었습니다. 시간이 있으면 질문이 하나 더 있습니다. afterDelay를 사용하는 대신 장면을 다시로드 할 때만 어떻게 재설정 할 수 있습니까? 즉. 사용자가 다음 장면에 가서이 장면으로 돌아 오기로 결정한 경우? – user2800989