iphone - 如何让音频播放器再次播放?
<p><p>我有 2 个 ViewController ,我在第一个 ViewController 中使用 AVAudioPlayer 播放音乐。
我转到第二个 ViewController 并停止音乐:</p>
<pre><code>;
;
;
;
;
;
;
</code></pre>
<p>当我再次回到第一个 ViewController 时,我想再次播放我的音乐,但代码没有再次触及 viewDidLoad。
这是我返回的代码:</p>
<pre><code>;
;
;
;
;
</code></pre>
<p>请分享一些解决方案或之后代码执行的内容..提前谢谢</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>这只是因为您从 <code>viewDidLoad</code> 调用音乐播放代码
并且 <code>viewDidLoad</code> 方法只为 <code>ViewController</code> 调用一次。</p>
<p>您应该从 <code>viewWillAppear</code> 而不是 <code>viewDidLoad</code> 方法调用您的代码(播放音乐)。</p>
<p> <a href="https://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html" rel="noreferrer noopener nofollow">Isuggest you should read <code>UIViewControler</code> Documentation.</a> </p>
<p><strong>更新答案</strong>:因为您想在加载和返回查看时播放音乐文件。
性能方面可能存在一些问题。
因为你调用了 Music 文件立即加载的时候查看。
所以查看下面的解释行。</p>
<ul>
<li><p><strong>ViewDidLoad</strong> - 在 ViewController 将其 View 层次结构加载到内存后调用此方法。无论 View 层次结构是从 nib 文件加载还是在 loadView 方法中以编程方式创建,都会调用此方法。您通常会覆盖此方法以对从 nib 文件加载的 View 执行额外的初始化。</p></li>
<li><p><strong>ViewWillAppear:当</strong>被调用时,这意味着 iPhone 已经准备好向用户显示 UIView,你在这里做的任何繁重的事情都会以非常明显的方式影响性能(比如动画被延迟,或播放音乐等)。</p></li>
<li><p><strong>ViewDidAppear</strong>:最后,这会通知 ViewController 其 View 已添加到 View 层次结构中。因此此方法足以完成此类任务,例如播放音乐文件。注意- ->你必须在你的实现中调用<code>super</code>。</p></li>
</ul></p>
<p style="font-size: 20px;">关于iphone - 如何让音频播放器再次播放?,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/9511877/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/9511877/
</a>
</p>
页:
[1]