2

ちょっとよくわからない問題があります。ほとんどの場合、UIImagePickerController を介して画像を取得すると、UIImage が返されます。この行

UIImage* outputImage = [info objectForKey:UIImagePickerControllerEditedImage]? : [info objectForKey:UIImagePickerControllerOriginalImage];

しかし、時々、Null 画像が返されます。そして、私はその理由を理解できないようです。誰かがこれに似たようなことを経験しましたか?

Web から保存された画像から、これらのヌル画像をより頻繁に返すようです。ただ、それだけとは言い切れません。

ありがとう!

フルメソッド。これは、ユーザーがピッカーから画像を選択したときに発生します。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {


    UIImage* outputImage = [info objectForKey:UIImagePickerControllerEditedImage]? : [info objectForKey:UIImagePickerControllerOriginalImage];

    NSLog(@"Output Image : %@", outputImage);

}

ログから得られるリターンは

Output Image : (null)

4

3 に答える 3

3

編集許可をUIImagePickerController.Likeに設定

UIImagePickerController *picker = [[UIImagePickerController alloc]init];
picker.allowsEditing = YES;
于 2015-06-18T09:30:29.797 に答える
1

これが遅いことはわかっていますが、最近、返される値が null であるという同様の問題に遭遇しました。実際に画像を編集していない場合は、次のように言うのが安全です:UIImage* outputImage = info[UIImagePickerControllerOriginalImage];あなたのコードの問題は、他の人が言おうとしていたと思いますが、三項演算子が間違った場所にあるということです。三項演算子の正しい使い方は(condition) ? (if_true) : (if_false). 同様の問題が発生している可能性がある場合は、誰にでも幸運を祈ります。

于 2014-05-18T21:42:24.383 に答える