-4

ユーザーが署名を作成し、それらを使用して電子メールで送信できるようにする電子メール署名アプリケーションを作成しています。署名名(テキストフィールド)、コンテンツ(テキストビュー)、画像(画像ビュー)であり、データベースに保存しているため、ユーザーが 2 番目のビューにあるテーブル ビューから署名名を選択すると、同じビューにプレビューが表示されます。テーブル ビューから署名 1 を選択した場合と同様に、プレビュー セクションでは、署名の内容を含む署名画像が表示されます。 (テキストビュー)、次に同じビューで送信(ボタン)を押しますプレビューセクションのテキストビューのテキストと画像がクリップボードにコピーされ、3番目のビューでメッセージセクションに貼り付けてメールを送信できますはいの場合、それを実装するにはどうすればよいですか、またはこれを行う方法について他のアイデアはありますか?

4

1 に答える 1

0

画像とメッセージを含むメールを送信するためのこの1つの方法がありますMFMessageComposeViewControllerDelegate..hファイルに追加MessageUI.frameworkして、プロジェクトにフレームワークを追加するだけです

-(void)sendMailWithImage:(NSString *)message Image:(UIImage *)image{
    if ([MFMailComposeViewController canSendMail]) 
    {
        UIImage *tempImageSave=image;
        MFMailComposeViewController *mailComposeViewController = [[MFMailComposeViewController alloc] init];
        NSString *mailBody = message;

        NSData *imageData = UIImagePNGRepresentation(tempImageSave);
        [mailComposeViewController addAttachmentData:imageData mimeType:@"image/png" fileName:@"Testing"];
        [mailComposeViewController setMessageBody:mailBody isHTML:NO];
        mailComposeViewController.mailComposeDelegate = self;
        [self presentViewController:mailComposeViewController animated:YES completion:nil];
    } 
    else 
    {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"e-Mail Sending Alert"
                                                        message:@"You can't send a mail"
                                                       delegate:nil
                                              cancelButtonTitle:@"OK" 
                                              otherButtonTitles:nil];
        [alert show];
        [alert release];
    }

}

そして、この以下のメソッドはのデリゲートメソッドですMFMessageComposeViewControllerDelegate

#pragma mark - MFMessage Delegate

- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
    [self dismissViewControllerAnimated:YES completion:nil];
}

- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error
{
    if (result == MFMailComposeResultSent) 
    {
        NSLog(@"\n\n Email Sent");
    }
    [self dismissViewControllerAnimated:YES completion:nil];
}

これがお役に立てば幸いです...

于 2012-11-26T09:46:06.403 に答える