2013-01-08 2 views
0

У меня возникли проблемы с получением URL-адреса изображения, которое мое приложение использует с помощью UIImagePickerController. Если видеозахвачено, объект словаря, возвращаемый в didFinishPickingMediaWithInfo, содержит значение UIImagePickerControllerMediaURL, которое указывает на видеофайл.UIImagePickerControllerMediaURL всегда нуль для фото

Если я беру фотографию, объект словаря не содержит значения UIImagePickerControllerMediaURL или значения UIImagePickerControllerReferenceURL. не

погуглить вокруг вскинула разные вещи, которые я безуспешно, в том числе:

  • Набор allowsEditing ДА (также попытался NO)
  • Уволить модальный сборщика изображения перед получением доступа к информации словаря.
  • Кастинг информационного объекта ForKey для .... MediaURL до NSURL. Не удалось, так как это было nil.
  • Установите mediaTypes на подборщик изображений, чтобы включить (NSString*)kUTTypeImage и (NSString*)kUTTypeMovie.

Но информационный словарь никогда не содержит URL-адрес изображения. Есть идеи?

ответ

2

Как указано в документации, info является:

Словарь, содержащий исходное изображение и отредактированное изображение, если изображение было выбрано; или URL-адрес файловой системы для фильма, если выбран фильм . Словарь также содержит любую соответствующую информацию для редактирования.

Таким образом, вы не получите URL-адрес, если изображение было выбрано. Вы получаете изображение как UIImage.

// Get picked image from info dictionary

UIImage *image = info[UIImagePickerControllerOriginalImage];

[save the image]

2

Некоторой дополнительной информация, относящаяся к вашему вопросу:

Значение UIImagePickerControllerReferenceURL устанавливается только если изображение редактируются. Затем этот ключ удерживает URL-адрес исходного изображения. Из документации:

URL-адрес библиотеки ресурсов для исходной версии выбранного элемента. После того, как пользователь отредактирует выбранный элемент - например, обрезая изображение или обрезая изображение , URL-адрес продолжает указывать исходную версию выбранного элемента.

Смежные вопросы