Я разрешаю пользователю выбрать изображение из галереи или сделать снимок с помощью камеры. Я бы сохранил путь к изображению в обоих случаях, чтобы я мог использовать его для отображения изображения во второй момент.
Когда пользователь выбирает изображение из галереи, я могу использовать
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
if([[info valueForKey:@"UIImagePickerControllerMediaType"] isEqualToString:@"public.image"]) {
NSURL *imageUrl = [info valueForKey:@"UIImagePickerControllerReferenceURL"];
}
}
Вместо этого, если пользователь делает снимок на лету, я сохраняю его в фотопленке с помощью:
UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
После его сохранения я хотел бы получить соответствующий NSURL, выбранный пользователем.
Как я мог сделать?
ИЗМЕНИТЬ
Моя проблема не в изображении, выбранном из галереи. Мне удалось получить URL-адрес, используя путь UIImagePickerControllerReferenceURL. Моя проблема в том, что пользователь делает снимок с помощью камеры. Я могу записать это в список фотографий, но я должен найти способ автоматически выбрать его так, чтобы
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
вызывается снова, и я могу использовать ключ UIImagePickerControllerReferenceURL для получения соответствующего URL-адреса.