2016-10-28 17 views
1

iOSバージョン10以上でカメラのフラッシュを正しく設定できません(これはiOS 9で正しく動作しています)。常にUIImagePickerControllerCameraFlashModeAutoにデフォルト設定されています。iOS 10でカメラのフラッシュが動作しない設定

は、ここに私のコードです:

UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
[picker setAllowsEditing:NO]; 
[picker setDelegate:self]; 
[picker setSourceType:UIImagePickerControllerSourceTypeCamera]; 
[picker setCameraFlashMode:UIImagePickerControllerCameraFlashModeOn]; 
[picker setCameraOverlayView:overlayView]; 
[self presentViewController:picker animated:YES completion:Nil]; 
+1

フロントカメラかバックカメラで確認していますか? – KrishnaCA

+0

私はバックカメラのためにそれをチェックしています。 – cinnamonlao

答えて

2

だから私は、私はUIImagePickerControllerがレンダリングされるのを待つと、再びカメラのフラッシュを設定する必要がありますね。

だから私は

[self presentViewController:picker animated:YES completion:^{ 
    //For iOS 10 and higher versions so it can set the proper flashmode 
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 10) { 
     [picker setCameraFlashMode:UIImagePickerControllerCameraFlashModeOn]; 
    } 
}]; 

[self presentViewController:picker animated:YES completion:nil]; 

を更新しましたが、これは助けることができる願っています。

関連する問題