2012-12-04 86 views
7

我試了兩次兩個不同的應用程序,我得到了同樣的東西。我有一個設置UIImagePIckerController實例如下:CGAffineTransformInvert:UIImagePickerController中的奇異矩陣與showsCameraControls = NO

- (IBAction)addImage:(UIBarButtonItem *)sender { 


    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) { 
     NSArray *mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera]; 
     if ([mediaTypes containsObject:(NSString *)kUTTypeImage]) { 
      UIImagePickerController *picker = [[UIImagePickerController alloc] init]; 
      picker.delegate = self; 
      picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
      picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeImage]; 
      picker.allowsEditing = NO; 
      picker.showsCameraControls = NO; 

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

     }   
[..] 

} 

這是第二個。在第一次,我設置了一個自定義覆蓋來運行快門和其他功能。一切都正常運行,但我一直在控制檯上得到一個錯誤:

<Error>: CGAffineTransformInvert: singular matrix. 

當我運行應用程序時,我每次旋轉時間(或移動時它標誌着一個旋轉)設備,而相機距{something happens here}。我在iPhone 4和iPad Mini上都嘗試過,結果相同。大量的挖掘後,我發現這只是在情況下

picker.showsCameraControls = NO; 

發生,如果我把

picker.showsCameraControls = YES; 

然後我沒有得到任何消息(儘管我的自定義覆蓋隱藏太)。確保它不是自定義覆蓋圖本身,我試圖將其保留,並且仍然會顯示錯誤消息。

有人對我應該做什麼有什麼想法嗎?

+0

優秀的第一篇文章,並歡迎堆棧溢出。如果可以的話,我要編輯你的文章的兩行,你可以點擊你的文章下的編輯鏈接進一步編輯它,或者你可以點擊我編輯上方的時間戳來查看到目前爲止的變化。帖子。對不起,對這篇文章沒有其他建設性的評論。我會鼓勵你添加一些東西來代替'{發生在這裏的事情}',因爲我不清楚移動手機會發生什麼。 – jcolebrand

+0

我在iOS 5 iPhone 4上遇到與picker.showsCameraControls = NO;相同的問題。它只發生在我保存pic - imagePickerController:didFinishPickingMediaWithInfo:在JPEG(不是PNG)中。如果我將它保存在PNG中,它會以某種方式進行旋轉。 –

+0

@jcolebrand:嗨...我也得到同樣的問題。你能幫我解決這個問題嗎? –

回答