0

アプリが を使用して撮影した写真の画像 URL を取得できませんUIImagePickerController。ビデオがキャプチャされた場合、返されるディクショナリ オブジェクトには、ビデオ ファイルを指す値がdidFinishPickingMediaWithInfo含まれます。UIImagePickerControllerMediaURL

写真を撮ると、辞書オブジェクトに値が含まれていないUIImagePickerControllerMediaURLか、UIImagePickerControllerReferenceURL値が含まれていません。

グーグルで調べてみると、次のようなさまざまなことを試しましたが、成功しませんでした。

  • allowEditing を YES に設定します (NO も試しました)
  • 情報ディクショナリにアクセスする前に、モーダル イメージ ピッカーを閉じます。
  • .... の info objectForKey を にキャストしMediaURLますNSURL。そのまま失敗nil
  • イメージ ピッカーの mediaTypes を設定して、(NSString*) kUTTypeImageとを含めます(NSString*) kUTTypeMovie

しかし、info ディクショナリには画像への URL が含まれていません。何か案は?

4

2 に答える 2

2

あなたの質問に関連するいくつかの追加情報:

UIImagePickerControllerReferenceURL値は、画像が編集された場合にのみ設定されます。このキーは、元の画像への URL を保持します。ドキュメントから:

選択したアイテムの元のバージョンのアセット ライブラリ URL。ユーザーが画像のトリミングやムービーのトリミングなど、選択したアイテムを編集した後も、URL は選択したアイテムの元のバージョンを指し続けます。

于 2013-01-08T23:38:03.430 に答える
2

ドキュメントに記載されているように、次のとおりinfoです。

画像が選択された場合は、元の画像と編集された画像を含む辞書。または、映画が選択された場合は、映画のファイルシステム URL。ディクショナリには、関連する編集情報も含まれています。

そのため、画像が選択されている場合は URL を取得できません。画像は UIImage として取得します。

// Get picked image from info dictionary

UIImage *image = info[UIImagePickerControllerOriginalImage];

[save the image]

于 2013-01-08T17:29:08.560 に答える