2012-02-22 3 views
0

Мне нужно выполнить функцию «отправить фотографию». У меня есть метод веб-службы, который принимает изображение как параметр. И мне нужно выполнить следующие действия:Как отправить фотографию из галереи программно?

Пользователь нажимает кнопку, а затем открывается фотогалерею (также должно быть круто, чтобы выполнять отправку фотографии с камеры, т. Е. Камера открывает пользователя сделать фотографию, а затем отправить) Пользователь выбирает фотографию и нажимает кнопку Отправить (тогда мой метод должен работать).

Скажите, пожалуйста, есть ли способ сделать это?

ответ

4
- (IBAction)upload:(id)sender { 
    imagePickerViewController = [[UIImagePickerController alloc] init]; 
    imagePickerViewController.delegate = self; 
    imagePickerViewController.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 
    [self presentModalViewController:imagePickerViewController animated:YES]; 

} 


    - (void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
    { 
     requestType = 8; 
     [picker dismissModalViewControllerAnimated:YES]; 
     // Access the uncropped image from info dictionary 
     int seconds = [[NSDate date] timeIntervalSince1970]; 
     NSString *imageName = [NSString stringWithFormat:@"%d.png", seconds]; 
     UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; 
     NSURL *url = [NSURL URLWithString:yourUploadLink]; 
     ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 


     NSData* imageData=UIImageJPEGRepresentation(image, 1.0); 
     if (imageData) { 
      NSLog(@"imageData exists"); 
     } 
     [request setData:imageData withFileName:imageName andContentType:@"image/png" forKey:@"userfile"]; 
     [request setDelegate:self]; 
     [request startAsynchronous]; 

    // [picker release]; 
    } 
2

Вы должны сделать некоторые исследования, прежде чем спросить, но я буду направлять вас, чтобы посмотреть на UIImagePickerController:

https://developer.apple.com/library/ios/#documentation/uikit/reference/UIImagePickerController_Class/UIImagePickerController/UIImagePickerController.html

+0

Спасибо, конечно, я обеспечил некоторый поиск, но все, что я нашел не совсем, что мне нужно .. – Stas

+0

В любом случае, UIImagePickerController позволит вам отображать на пользователя фотогалереи или камеры. вы вернете метод делегата, когда пользователь выберет изображение (либо из галереи, либо из камеры), а затем вы сможете делать все, что захотите. –

0

Да, есть. Вам нужно только создать приложение, используя: UIImagePicker для выбора изображения (камеры или библиотеки) и NSURLConnection для ваших задач связи с вашими услугами.

Вы можете начать здесь: Apple iOS Dev Library

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