Как я могу прикрепить изображение iphone через почту в iphone - PullRequest
0 голосов
/ 03 апреля 2010

Я новичок в разработке для iPhone. Я создал кнопку в представлении. При нажатии на кнопку он загружает фотобиблиотеку с Iphone. Теперь я хочу прикрепить выбранные изображения по почте. Я не знаю, как прикрепить изображение в MFMailComposerView.

Как мне этого добиться,

Вот мой код,

-(IBAction) Pictures:(id)sender
{ 
    self.imgpicker = [[UIImagePickerController alloc] init];
    self.imgpicker.delegate = self;
    self.imgpicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    [self presentModalViewController:self.imgpicker animated:YES];
}

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)img1    editingInfo:(NSDictionary *)editInfo {
    [[picker parentViewController] dismissModalViewControllerAnimated:NO]; 
    UIView *view = [[UIView alloc] init];   (This view for displaying the images)
    imageview = [[UIImageView alloc] initWithImage:img1];
    [imageview setFrame:CGRectMake(0, 0, 320, 420)];
   [self.view addSubview:imageview];
    [view release];

  UIBarButtonItem *rightbutton = [[UIBarButtonItem alloc] initWithTitle:@"Email"   style:UIBarButtonItemStyleBordered target:self action:@selector(rightbutton)];
  self.navigationItem.rightBarButtonItem = rightbutton;
  [rightbutton release];

   }

  -(void) rightbutton
  {
      [self emailImage:(UIImage *)image];( how to pass the image to mail view)
  }

  - (void)emailImage:(UIImage *)image
  {
      picker = [[MFMailComposeViewController alloc] init];
      picker.mailComposeDelegate = self;
      [picker setToRecipients:[NSArray arrayWithObjects:@"aaaa@nnn.com",nil]];
      NSData *data = UIImagePNGRepresentation(image);
      [picker addAttachmentData:data mimeType:@"image/png" fileName:@"iPod Library Image"]; 
      [self presentModalViewController:picker animated:YES];
      [picker release];
    }

Пожалуйста, помогите мне.

Спасибо.

1 Ответ

1 голос
/ 03 апреля 2010

Вероятно, вам следует установить переменную экземпляра UIImage в вашем классе контроллера (imageThatWasPicked или тому подобное), а затем установить эту переменную экземпляра, когда вы получите изображение из -imagePickerController:didFinishPickingImage:editingInfo:. Затем вы можете ссылаться на эту переменную экземпляра при вызове -emailImage:.

Как примечание, вы пропускаете imageView, и я понятия не имею, что вы пытаетесь сделать с view в методе делегата средства выбора изображений. Вы могли бы, вероятно, избавиться от кода, выделяющего и освобождающего view полностью.

...