배경 음악을 켜는 것과 관련된 iPhone IOS 앱을 개발합니다. 이 목적으로 AVFoundation과 AVAudioPlayer를 선택하기로 결정했습니다. 이 클래스의AVFoundation IOS : 배경 음악 재생
// AVMusicController.h
#import <AVFoundation/AVFoundation.h>
@interface AVMusicController : NSObject <AVAudioPlayerDelegate>
{
AVAudioPlayer *avMusicPlayer;
}
@property(nonatomic, retain) AVAudioPlayer *avMusicPlayer;
-(void)playMusic;
-(void)muteMusic;
-(void)unMuteMusic;
@end
및 구현 :
그래서 내가 가지고있는 두 개의 뷰 컨트롤러와 실제로 AVFramework 모든 방법이 기록 된 뮤직 컨트롤러 하나 NSObject의 컨트롤러입니다.
그래서보기가로드 될 때 첫 번째보기 컨트롤러가 배경 음악을 켜고 (내가 관리하는 경우) 두 번째보기 컨트롤러가 제어하는 다른보기로 이동하는 단추가 있습니다. 두 번째 버튼에는 음악을 음소거하는 버튼이 있습니다. 그래서 여기 내 문제가 있습니다 : 두 번째보기 컨트롤러에 AVMusicController로드, 두 번째보기 xib 파일에서 nsobject 만들기, 컨트롤러를 AVMusic 컨트롤러로 변경하고 파일 소유자에게 연결합니다.
하지만 코드를 작성할 때 :
-(IBAction)buttonPressed:
{
[self.avMusicController muteMusic];
}
그것은 음악을 음소거하지 않습니다. 첫 번째보기 컨트롤러 (음악을 켜는)에서 동일한 작업을 수행 할 때 : 버튼을 만들고 동일한 코드를 작성하면 모든 것이 작동합니다.
제발,이 문제에 대한 아이디어를 제안 해주세요. 귀하의 관심에 감사드립니다.
내 질문의 어떤 부분이 사용자를 혼란스럽게하는 경우 알려 주시면 변경하겠습니다. 미리 감사드립니다.