1

バックグラウンドミュージックをオンにするiPhone IOSアプリを開発しています。この目的のために、AVFoundation と AVAudioPlayer を選択することにしました。

したがって、私が持っているのは、2 つのビュー コントローラーと 1 つの nsobject コントローラーです。これは実際には Music コントローラーであり、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

そして、このクラスの実装。

したがって、最初のView Controllerは、ビューがロードされたときにバックグラウンドミュージックをオンにし(なんとかそれを行うことができました)、2番目のView Controllerによって制御される他のビューに移動するためのボタンがあります。2 つ目は、音楽をミュートするボタンがあります。ここに私の問題があります: AVMusicController を 2 番目のビュー コントローラーにロードし、2 番目のビュー xib ファイルで nsobject を作成し、そのコントローラーを AVMusic コントローラーに変更して、ファイルの所有者に接続します。

しかし、私がコードを書くとき:

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

音楽をミュートしません。ただし、最初のView Controller(音楽をオンにする)で同じことを行うと、ボタンを作成して同じコードを記述します-すべてが機能します。

この問題に関するアイデアを教えてください。ご清聴ありがとうございました。

私の質問の一部があなたを混乱させている場合は、お知らせください。変更します。前もって感謝します。

4

0 に答える 0