2012-11-08 6 views
0

현재 FlightTTS를 사용하여 텍스트 및 음성 응용 프로그램을 개발 중이며 잘 작동하고 있습니다. iPhone의 다른 클래스에서 AVAudioPlayer를 중지하는 방법은 무엇입니까?

Class FliteTTS 

-(void)speakText 
    { 
     [audiplayer Play]; 
    } 

    -(void)stopTalking 
    { 
     [audioPlayer stop]; 
     [audioPlayer release]; 
    } 

Class B 

-(void)TouchToPlay 
    { 
     [self runFlite:ScriptDetails.text]; // Play audioplyer in FliteTTS 
    } 

    -(void)StopPlaying 
    { 
     FliteTTS *flit = [[FliteTTS alloc]init]; 
     [flit stopTalking]; 
    } 

그럼 내가 FliteTTS 클래스에 클래스 B에서 audioplayer을 중단했지만, 그 방법이를 중지하는 중지하지? 도와주세요. 사전에

덕분에 여기

+1

이 질문을 닫은 이유는 무엇입니까? 이 주제에서 벗어난 것은 무엇입니까? – iDev

답변

0

:

-(void)StopPlaying{ 
    FliteTTS *flit = [[FliteTTS alloc]init]; 
    [flit stopTalking]; } 

당신은 당신의 FliteTTS 클래스의 새 인스턴스를 만들고이가 그것을 중지하고 그리 오디오를 재생중인 인스턴스가 아닌, 당신은 시도 할 수 있습니다 FliteTTS 클래스를 싱글 톤으로 만들어 프로젝트 전체를 통해 단일 인스턴스를 반환하므로 원하는 클래스에서 재생/정지 또는 다른 제어 작업을 수행 할 수 있습니다.

0

객체는 당신이 audiplayer 인스턴스에 대한 액세스를 제공 audiplayer 정적 및 사용 싱글을해야하므로, 당신은 클래스 FliteTTS의 새 인스턴스를 만들 때마다 초기화 나타나는 audiplayer.

관련 문제