2011-01-25 10 views
0
- (IBAction)triggerSound { 
    if (player == nil) { 
     NSError *error; 
     player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error]; 
    } else if ([player isPlaying]) { 
     [player stop]; 
     player.currentTime = 0; 
    } 

    if (![player play]) { 
     NSLog(@"fail"); 
    } 
} 

ここで、playerはAVAudioPlayerで、このアクションはUIButtonにリンクされています。サウンドは再生され、サウンドが終了した後に再び再生することができますが、再生中にボタンをもう一度押すと、「失敗」というメッセージが記録され、サウンドは例外なく再生されません。iPhone SDK AVAudioPlayer - 停止してから起動できません

IとiPadをiOS 4.2.1で使用しています。

答えて

0

私は、オーディオストリームがstop(これは参照に従って、prepareToPlayと再生が元に戻ったものを元に戻した)の後で再生できないことに気付きました。 stopを呼び出す代わりに、currentTimeをplayer.duration(ストリームの終わり)に設定しました。

関連する問題