如何在第一个视图中播放来自按钮的声音,然后在另一个视图中停止声音(使用按钮)
发布于 2012-05-11 20:41:12
首先明确你想要停止来自其他视图而不是视图控制器的声音。
如果你想从其他视图停止,那么让音频播放器成为你的类对象,并在其他视图的按钮方法中停止它。
如果您想要从其他视图控制器停止,则使用委托。
发布于 2012-05-11 20:43:42
简单多了!首先,添加AVFoundation框架并实现AVAudioPlayer。您可以查看有关如何播放音乐/声音的文档和其他堆栈溢出问题。然后将该AVAudioPlayer设置为一个类中的属性。然后声明一个停止声音的方法,通过调用[audioPlayer stop]也值得一提的是,[audioPlayer pause] // and [audioPlayer play]也同时存在。或者,您可以通过另一个类指向该类本身的指针来调用这些消息。然后在另一个类中,声明一个具有指向另一个类的指针的IBAction,并向该类发送一条消息,告诉它执行stop方法。很简单,这是一个结构:
viewDidLoad方法的UIButton方法声明并绘制一个IBAction,添加并绘制一个链接到调用stop方法或只是调用[FirstView audioPlayer] stop];或类似方法的IBAction的UIButton!记住要遵守委派!重要!
建议的问题,你可以参考AVAUDIOPLAYER代码!
iPhone/iPad - Loop Background Music?
但请记住,不要照搬这段代码,记住属性,你显然需要修改参数。对不起,如果我听起来太明显了,只是你的问题太模糊了,我不知道你是不是一个完全的初学者!
发布于 2012-05-11 20:55:27
用一个监听自定义通知的类来包装你的播放器。
例如:
#define PlayerPlayNotification @"PlayerPlayNotification"
#define PlayerStopNotification @"PlayerStopNotification"然后,每个按钮可以发送所需的通知,以便在不知道实际玩家或没有任何指向它的指针的情况下开始/停止播放。
https://stackoverflow.com/questions/10551239
复制相似问题