如何“取消” AVAudioSession在Segue上到另一个视图控制器?

时间:2019-03-12 18:32:57

标签: ios avaudiosession avaudiorecorder swift4.2

我正在使用Tab Bar Controller创建一个录音应用程序。我已经使用具有正确会话和URL的AVAudioRecorder创建了RecordingView,并使用segue标识符将记录传递到另一个视图控制器。

我正在解决的问题是,用户是否要在完成录制会话之前切换标签栏视图。理想情况下,我想取消会话,以便当他们回到“录制视图”时,一切都变得像新的一样。 Here is the code I used to pass the URL to another view.

我考虑过只在没有标签栏的视图中打开记录器,以便用户必须使用取消按钮才能离开视图,但这是一种很好的学习体验。我知道这是一个简单的修复程序,但是由于某些原因我无法弄清楚。在此先感谢您的协助:D

1 个答案:

答案 0 :(得分:0)

您可以在viewWillDisappear中以viewDidDisappearRecordingViewController方法停止录制。当用户选择另一个选项卡时,将调用这些方法。

override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)

    // Stop your recording session here.
}