2013-07-10 7 views
1

iOS 볼륨 오버레이/hudder를 숨기면서 초기보기 컨트롤러에서 볼륨을 최대로 설정하려고합니다. 어떤 이유로 든 내 .m 파일에서이 코드를 사용하면 :볼륨 설정 중 볼륨 오버레이 숨기기

-(void)preventSystemVolumePopup { 
    // Prevent Audio-Change Popus 
    MPVolumeView *volumeView = [[MPVolumeView alloc] initWithFrame:CGRectMake(-2000., -2000., 0.1f, 0.1f)]; 
    NSArray *windows = [UIApplication sharedApplication].windows; 

    volumeView.alpha = 0.1f; 
    volumeView.userInteractionEnabled = NO; 
    [[MPMusicPlayerController applicationMusicPlayer] setVolume:1.0];//set system vol to max 


    if (windows.count > 0) { 
     [[windows objectAtIndex:0] addSubview:volumeView]; 

    } 
} 

볼륨이 변경되지 않습니다. 그러나 시스템 볼륨 변경을 추가하는 경우 :

[[MPMusicPlayerController applicationMusicPlayer] setVolume:1.0]; 

내 viewDidLoad로 볼륨 오버레이가 나타나는 것만 제외하고 나타납니다.

누군가 내가 잘못하고있는 것을 설명 할 수 있습니까? 또한 MPVolumeView의 IB에 UIview을 추가하여 숨기려고보기의 뒷면으로 보내려고했지만 오버레이를 숨기지 않았습니다.

답변

0
[[MPMusicPlayerController applicationMusicPlayer] setVolume:1.0]; 
단지 시뮬레이터에서 작동하지 장치에서 작동

NANNAV에서, setvolume 명령이 작동
+0

감사합니다, 내가 가진 그 위의 내 코드 라인 8 .... 난 문제에 가지고있는 것은, 만약 내가 그것을 안에 넣으면 - (void) preventSystemVolumePopup 문이 작동하지 않는다. 볼륨이 max로 설정되어 있지 않다. 그러나 setvolume 코드를 내 viewDidLoad에 넣으면 볼륨을 조정하지만 볼륨 HUD가 표시됩니다. – snownskate