从 viewdidload 调用 avaudiorecorder 调用不好吗?

Is calling avaudiorecorder calling from viewdidload bad?

我正在使用 Xcode 6.1.1 和 objective-c。

我正在使用 AVAudioRecorder 录制一些音频。 这一切都很好,回放也很有效。 现在我用一个按钮激活录音。

我想做的是在 viewdidload 结束时开始录制。 所以我将以下内容放在 viewdidload 方法的末尾:

[audiorecorder record];

Xcode 没有抱怨它,它正在工作。使用按钮或在 viewdidload 中调用按钮时,我听不出有什么不同。但是我对这样做还是有一些不好的感觉。

问题:在 viewdidload 末尾使用 [audiorecorder record]; 是一个好习惯吗?或者这会破坏应用程序吗?

这没有错。根据您过渡到视图的方式,加载视图时可能会出现一些延迟。

另一种选择是在 viewdidload 中调用 - (BOOL)prepareToRecord,然后在 - (void)viewDidAppear:(BOOL)animated 中调用 record。这将允许所有 UI 元素在让 AVAudioRecorder 获取内存之前加载到屏幕上。