2012-12-04 12 views
7

これを2つの異なるアプリケーションで2回試してみましたが、同じことが起こりました。私は次のようにUIImagePIckerControllerインスタンスを設定しています:CGAffineTransformInvert:showsCameraControls = NOを指定したUIImagePickerControllerの特異行列

- (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]; 

     }   
[..] 

} 

これは2番目です。最初はシャッターやその他の機能を実行するカスタムオーバーレイを設定しました。すべてが正常に動作しますが、私は、コンソール上のエラーを取得しておいてください。私はアプリ、私が回転するたびに実行すると

<Error>: CGAffineTransformInvert: singular matrix. 

は、デバイス(または移動する回転を知らせる程度)カメラがアップ{something happens here}ている間。私はiPhone 4とiPad Miniの両方で同じ結果を試しました。私は

picker.showsCameraControls = YES; 

を置く場合掘り多くの後、私はこれが唯一の

picker.showsCameraControls = NO; 

場合に起こるそれから私は(私のカスタムオーバーレイがあまりにも隠されているが)何のメッセージが表示されますが見つかりません。カスタムオーバーレイ自体ではないことを確認して、それを残してみましたが、それでもエラーメッセージが表示されます。

誰も私がこれについて何をすべきか考えていますか?

+0

優れた最初のポストとスタックオーバーフローを歓迎します。もし私があなたの投稿の2行を編集するつもりなら、投稿の下にある編集リンクをクリックして自分でさらに編集したり、編集上のタイムスタンプをクリックしてこれまでの変更を確認することができます役職。申し訳ありませんが、投稿に関する他の建設的なコメントはありません。私はあなたが電話を動かすときに何が起こるかが完全にはわからなかったので、あなたは '{ここで起こったこと} 'の代わりに何かを加えることを勧めます。 – jcolebrand

+0

iOS 5 iPhone 4でpicker.showsCameraControls = NO;と同じ問題が発生しています。これは、imagePickerController:didFinishPickingMediaWithInfoからJPEGを(PNGではなく)保存した場合にのみ発生します。私はPNGでそれを保存すると、何とか回転されます。 –

+0

@jcolebrand:こんにちは...私も同じ問題を抱えています。この問題を解決するのに役立ちますか? –

答えて

1

アップルのPhotoPickerサンプルコードがこの警告を生成するので、私は大したことではないと信じています。ローテーションは行列と関係していますが、特にどの行列が回転しているのかわかりませんが、行列の行列式を0で割った行列演算を行うのは数学的違反と考えられます。このようなマトリックスは、可逆または '特異' ではありません。

http://en.wikipedia.org/wiki/Rotation_matrix

http://en.wikipedia.org/wiki/Determinant

http://en.wikipedia.org/wiki/Singular_matrix#singular

関連する問題