我有firstViewController和SecondViewController。在这两个控制器中,我都可以点击播放按钮,旋律将会播放。因此,当我在一个控制器中点击播放按钮,然后转到2controller并点击其他播放按钮时,两个旋律将一起播放。所以我的问题是,当我点击第二个控制器中的播放按钮时,如何从第一个控制器停止第一首旋律。谢谢!
在firstViewController viewdidload中
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"first" ofType:@"wav"];
NSURL *soundURL_ = [NSURL fileURLWithPath:soundPath];
AVAudioPlayer *first = [[AVAudioPlayer alloc] initWithContentsOfURL:soundURL_ error:nil];
[first prepareToPlay];在secondViewcontroller中相同,但第二个而不是第一个
当我按下按钮的时候:
[first play]发布于 2012-07-17 08:19:38
您可以创建一个包含与播放器关联的AVAudioPlayer和方法的自定义对象的实例化,然后在两个视图中为该对象创建一个指针。
如果您希望从AppDelegate中实例化AVAudioPlayer,则必须首先设置AVAudioPlayer并将其分配给AppDelegate的一个属性。
从你的视图控制器中,访问你的App Delegate的任何属性都很容易,只需写下:
AppNameAppDelegate *ad = (AppNameAppDelegate *)[[UIApplication sharedApplication] delegate];然后是:
localAVAudioPlayerInstance = ad.audioPlayer;如果您想要更详细的说明,请告诉我。
https://stackoverflow.com/questions/11512259
复制相似问题