2012-02-22 7 views
2

Я использую следующий код для воспроизведения звукакак остановить звук при нажатии кнопки

NSString *laughSoundPath = [[NSBundle mainBundle]pathForResource:@"laugh" ofType:@"wav"]; 
    NSURL *laughURL = [[NSURL alloc]initFileURLWithPath:laughSoundPath]; 
    laughTone = [[AVAudioPlayer alloc]initWithContentsOfURL:laughURL error:nil]; 
    [laughTone prepareToPlay]; 
    [laughTone setDelegate:self]; 
    [laughURL release]; 

-(IBAction)play 
{ 
[laughTone play]; 
} 

Я использую следующую строку, чтобы остановить звук

-(IBAction)stop 
    { 
    [laughTone stop]; 
    } 

Проблема .. Когда я играть звук снова , его начало с того места, где оно было остановлено .. я хочу сказать, что он работает как пауза .. помогите мне

ответ

4

Попробуйте сбросить время и затем сыграть, снова введите код в свой метод игры:

laughTone.currentTime = 0; 
[laughTone play]; 
+0

Нету его не работает – Shreedhar

+0

@Shreedhar: Хорошо отредактированный попробовать, что вместо этого. – Dair

8
-(IBAction)stop 
{ 
    [laughTone stop]; 
    [laughTone playAtTime:0]; 
} 
1

Попробуйте это:

NSString *Str = [[NSBundle mainBundle] pathForResource:@"Ahhh" ofType:@"wav"]; 
AVAudioPlayer *audioSound =[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:ahhhPath] error:NULL]; 

-(IBAction)btnStopsound(id)sender 
{ 
    [audioSound stop]; 
    audioSound.currentTime=0; 
    [audioSound play]; //restart the player 

}