iOS: пример кода UIImageView - PullRequest
       3

iOS: пример кода UIImageView

1 голос
/ 28 января 2012

Я пишу приложение, которое позволяет пользователям загружать фотографии с камеры и сохранять их в приложении. Единственная проблема в том, что я не уверен, с чего начать. Я перечитал документы Apple на UIImageView, но это, похоже, не помогло так, как обычно. Мне было интересно, может ли кто-нибудь указать мне правильное направление некоторого примера кода, который обычно делает то же самое?

Спасибо!

1 Ответ

2 голосов
/ 28 января 2012

Что ж, давайте сначала разберемся с вещами

  • UIImageView - это визуальный компонент для отображения UIImage (независимо от того, откуда они пришли)
  • UIImagePickerController - это компонент, предоставленный Apple для получения изображений (либо из фотоальбома пользователя, либо непосредственно с камеры)
  • Сохранение изображения означает сохранение его в локальной файловой системе

Теперь посмотрим, как оно на самом деле объединяется:

Сначала вы захотите создать UIImagePickerController, определить источник изображений и настроить делегата для обработки возвращаемого изображения.Что-то вроде этого:

// Always make sure to test if the source you want is available
if ([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera])
{
    UIImagePickerController *imagePicker =  [[UIImagePickerController alloc] init];
    imagePicker.delegate = self;
    imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
    imagePicker.mediaTypes = [NSArray arrayWithObjects:
                              (NSString *) kUTTypeImage,
                              nil];
    imagePicker.allowsEditing = NO;

//Our image picker is ready - now let's show it to the user
    [self presentModalViewController:imagePicker  animated:YES];
    [imagePicker release];

}

Это откроет средство выбора изображений для пользователя (в частности, камеры - вы можете играть с типами и источниками мультимедиа - посмотрите справочник UIImagePickerController , чтобыпосмотрите, какие у вас есть варианты.

Теперь вам нужно позаботиться о том, чтобы получить изображение, полученное от пользователя, и это делается с помощью реализации метода делегата:

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
//All the info from the image - including the image itself - are stored in the info dictionary.

NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];

if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) {
    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];

//Now - we have a reference to the image as a UIImage, so we can display it in a UIImageView or save it to disk or upload to a webserver. To show it - just set your imageView's image to the image
    imageView.image = image;
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...