• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

iphone - 如何让音频播放器再次播放?

[复制链接]
菜鸟教程小白 发表于 2022-12-13 11:56:29 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有 2 个 View Controller ,我在第一个 View Controller 中使用 AVAudioPlayer 播放音乐。 我转到第二个 View Controller 并停止音乐:

[audioPlayer stop];    
[UIView beginAnimations"Curl View" context:nil];
        [UIView setAnimationDuration:0.5];
        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
        [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];
        [self.view addSubview:secondController.view];
        [UIView commitAnimations];

当我再次回到第一个 View Controller 时,我想再次播放我的音乐,但代码没有再次触及 viewDidLoad。 这是我返回的代码:

[UIView beginAnimations"Flipping View" context:nil];
    [UIView setAnimationDuration:0.5];
    [UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:self.view.superview cache:YES];
    [self.view removeFromSuperview];
    [UIView commitAnimations];

请分享一些解决方案或之后代码执行的内容..提前谢谢



Best Answer-推荐答案


这只是因为您从 viewDidLoad 调用音乐播放代码 并且 viewDidLoad 方法只为 ViewController 调用一次。

您应该从 viewWillAppear 而不是 viewDidLoad 方法调用您的代码(播放音乐)。

I suggest you should read UIViewControler Documentation.

更新答案:因为您想在加载和返回查看时播放音乐文件。 性能方面可能存在一些问题。 因为你调用了 Music 文件立即加载的时候查看。 所以查看下面的解释行。

  • ViewDidLoad - 在 View Controller 将其 View 层次结构加载到内存后调用此方法。无论 View 层次结构是从 nib 文件加载还是在 loadView 方法中以编程方式创建,都会调用此方法。您通常会覆盖此方法以对从 nib 文件加载的 View 执行额外的初始化。

  • ViewWillAppear:当被调用时,这意味着 iPhone 已经准备好向用户显示 UIView,你在这里做的任何繁重的事情都会以非常明显的方式影响性能(比如动画被延迟,或播放音乐等)。

  • ViewDidAppear:最后,这会通知 View Controller 其 View 已添加到 View 层次结构中。因此此方法足以完成此类任务,例如播放音乐文件。注意- ->你必须在你的实现中调用super

关于iphone - 如何让音频播放器再次播放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9511877/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap