Apple のPage Control の例を使用しています。以下のコードを使用してアプリ自体でサウンドを再生することができましたが、何らかの理由で、サウンドを自動的に再生するように設定したページに到達する前に、サウンドが 1 ページ早くオフになりました。
- (void)viewDidLoad {
pageNumberLabel.text = [NSString stringWithFormat:@"Page %d", pageNumber + 1];
self.view.backgroundColor = [MyViewController pageControlColorWithIndex:pageNumber];
if (pageNumber == 3) {
NSString *clapPath = [[NSBundle mainBundle] pathForResource:@"nearSound" ofType:@"caf"];
CFURLRef clapURL = (CFURLRef ) [NSURL fileURLWithPath:clapPath];
AudioServicesCreateSystemSoundID(clapURL, &testID);
AudioServicesPlaySystemSound(testID);
}
4ページ目(pageNumber == 3)までスクロールすると音が鳴るはずなのに、3ページ目(pageNumber == 2)で鳴ってしまったのですが、なぜでしょうか?
解決できない場合は、おそらく回避策を講じる必要があります。サウンドを挿入する各ページの前にサウンドを配置します。
また、同じページに再度スクロールしたときにサウンドを再生するにはどうすればよいですか? アプリの起動後、一度だけ音が鳴るようです。
あなたの助けをいただければ幸いです。