1

我开发了一个涉及打开背景音乐的 iPhone IOS 应用程序。为此,我决定选择 AVFoundation 和 AVAudioPlayer。

所以我有两个视图控制器和一个 nsobject 控制器,它实际上是一个音乐控制器,所有带有 AVFramework 的方法都写在那里:

//  AVMusicController.h

#import <AVFoundation/AVFoundation.h>

@interface AVMusicController : NSObject <AVAudioPlayerDelegate>
{
    AVAudioPlayer *avMusicPlayer;
}

@property(nonatomic, retain) AVAudioPlayer *avMusicPlayer;

-(void)playMusic;
-(void)muteMusic;
-(void)unMuteMusic;

@end

并实现这个类。

因此,第一个视图控制器在视图加载时打开背景音乐(我设法做到了),并且它有一个按钮可以转到由第二个视图控制器控制的另一个视图。第二个有静音按钮。所以这是我的问题:我将 AVMusicController 加载到第二个视图控制器中,在第二个视图 xib 文件中创建 nsobject,将其控制器更改为 AVMusic 控制器并连接到文件的所有者。

但是当我写代码时:

-(IBAction)buttonPressed:
{    
    [self.avMusicController muteMusic];
}

它不会使音乐静音。虽然,当我在第一个视图控制器(打开音乐)中执行相同操作时:创建一个按钮并编写相同的代码 - 一切正常。

请就这个问题向我提出任何想法。感谢您的关注。

如果我的问题的任何部分让您感到困惑,请告诉我,我会更改它。先感谢您。

4

0 回答 0