이것은 기본적인 질문 일지 모르지만 일반적으로 코코아와 Objective-C 및 OOP를 처음 접했고 이에 대한 답을 찾을 수 없었습니다.다른 방법으로 액세스 할 수있는 단일 개체를 만들 수 있습니까?
내가 쓰고있는 응용 프로그램에서 사용자가 특정 버튼을 누를 때마다 소리 파일을 재생하고 싶습니다. 나는 그것을 위해 NSSound를 사용하고 구현하는데 문제가 없다. 파일 재생이 완료되기 전에 사용자가 버튼을 반복해서 클릭하면 때문에 나를 위해 문제가
- (IBAction)playSound:(id)sender {
NSSound *sound = [[NSSound alloc] initWithContentsOfFile:kSoundFilePath byReference:YES];
[sound play];
}
: 문제는 내가 단지 버튼을 누를 때마다 객체 새로운 NSSound를 작성하여 그 방법을 알고있다 , 그것은 NSSound의 새로운 인스턴스를 생성 할 것이고, 그들은 모두 서로의 위에 놀 것이고, 나는 그것을 원하지 않습니다. 해당 메서드 밖에 NSSound 개체를 만들 수있는 방법이 있습니까 및 NSSound 다시 재생하려면 말하기 전에 재생중인 경우 보려면 단추 검사 IBAction 메서드가 있습니까?
sharedInstance/singleton은 어떻습니까? – Larme
좋은 접근 방법이 아닙니다. 그는 생성 된 후에 변수를 저장하기를 원하며 하나의 사운드 객체 만 허용하지 않습니다. – SevenBits