サウンドが再生されて完了した後に機能を有効にしたいと思います。私は、NSTimerを組み込む必要があると思っていますが、それを実現するために実装する方法がわかりません。それは私に働くいくつかのコードを与えることができれば役に立ちます。一定時間後に関数をアクティブにする方法はありますか?
-4
A
答えて
5
あなたが試したコードを投稿してください。そうすれば誰かがあなたのコードの動作を助けることができます。この場合、あなたがやっていることのためのタイマーは必要ありません。プレイヤーのAVAudioPlayerDelegate
プロトコルは、あなたがしようとしているもののために設計されました:
import UIKit
import AVFoundation
class ViewController: UIViewController, AVAudioPlayerDelegate {
var audioPlayer:AVAudioPlayer?
func playSound(fileName:NSString)
{
let path = NSBundle.mainBundle().pathForResource(fileName, ofType:"wav")
let url = NSURL.fileURLWithPath(path!)
do {
try audioPlayer = AVAudioPlayer(contentsOfURL: url)
audioPlayer?.delegate = self
audioPlayer?.play()
} catch {
print("Player not available")
}
}
//MARK : AVAudioPlayerDelegate
func audioPlayerDidFinishPlaying(player: AVAudioPlayer, successfully flag: Bool) {
print("finished playing, do something else here")
}
}
+1
これも私がお勧めするものです。 'AVAudioPlayerDelegate'' audioPlayerDidFinishPlaying(_、successfully:) 'メソッドは、サウンドの再生が終了したときにコードを呼び出す方法です。 –
関連する問題
- 1. 一定時間後にコールバック関数を呼び出す方法
- 2. 一定時間後に強制的にフォームを送信する方法はありますか?
- 3. 一定時間後にアクションをトリガする方法は?
- 4. C#一定時間後にプログラムを停止する方法は?
- 5. Javaで一定時間後に実行を停止する方法はありますか?
- 6. 一定時間後にTreeViewコントロールのイベントをトリガーする方法はありますか?
- 7. 一定時間後にゴルーチンをキャンセルする方法
- 8. 一定時間後にテクスチャスクロールを停止する方法
- 9. Swift 3のメインスレッドで時間遅延の後に関数を呼び出す方法はありますか?
- 10. 一定時間後にプログラムを再起動する必要があります
- 11. 選択時にナビゲーションアイテムをアクティブにする方法はありますか?
- 12. 時間配列を時間順にソートする方法はありますか?
- 13. 関数間に反応変数をバインドする方法はありますか?
- 14. 特定の時間の後にモジュールからのアクセスを取り消す方法はありますか?
- 15. 一定時間後にメインループ内の関数を中断します
- 16. は一定時間後にスレッドを中断しますが、InterruptedExceptionをスローする必要がありますか?
- 17. jQuery関数の実行を一定時間無効にする方法
- 18. Document.readyまたは一定時間後に実行しますか?
- 19. 一定期間後に変数を0に戻す方法
- 20. ubuntuでプロセスの開始時刻を確認した後、一定時間後にプロセスを強制終了する方法はありますか?
- 21. javascriptで一定時間後に関数の実行を停止する
- 22. 一定の時間間隔後に列の値を変更する方法 - Cassandra
- 23. CSSを使用して一定の時間要素を非表示にする方法はありますか?
- 24. Ajaxを使用して特定の時間後に 'ID'を再ロード/リフレッシュする方法はありますか?
- 25. 関数の実行時間を数えずに一定時間ごとに関数を実行する
- 26. 指定した時間後にUrlFetchApp.fetchをキャンセルする方法はありますか?
- 27. arr = [val] * Nには、ライナーまたは一定の時間がありますか?
- 28. 一定時間後に方程式を生成する
- 29. 特定の時間枠の後に自動的にブートストラップアラートを開く方法はありますか?
- 30. 一定の時間間隔の後、一定の時間間隔の間に実行するスケジューラタスクを設定する方法
あなたの問題をグーグルで試しましたか?たとえば、「迅速なnstimer」は多くの結果をもたらします。 – luk2302