2009-09-03 7 views
2

iPhoneの電子メールプログラムを自分のアプリケーションの中に埋め込んだ人はいますか?iPhone - とにかくあなた自身のアプリケーションの中でiPhoneの電子メールアプリケーションを取得するには?

私はそれを試してみましょう。タップタップリベンジでは、 "友達に挑戦する"ことができます。あなたがそうすることを選択すると、標準のiPhone電子メールプログラムを開きます(あたかもそれを模倣すれば、それはうまく見えます)。連絡先から友達を選択して[送信]を押すだけです。あなたはTap Tap Revenge Appを離れることはありません。

これはどのような考えですか?

答えて

5

あなたは、あなたのプロジェクトにMessageUI.frameworkを含める必要があり、あなたのヘッダファイル内で使用すると、デリゲートを設定する必要があります。

#import <MessageUI/MessageUI.h> 
@interface RootViewController : UIViewController <MFMailComposeViewControllerDelegate> { 
    MFMailComposeViewController *email; 
} 

@property (nonatomic, retain) MFMailComposeViewController *email; 

あなたは、あなたが必要あなたの実装ファイル内のいくつかのデリゲートメソッドをすることを持っていますしたら(あなたは結果を見てチェックする必要がありますが、私は必要なだけの小さなコードを維持しようとしています)を含むように:

@synthesize email; 

- (void) mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error { 
    [email dismissModalViewControllerAnimated:YES]; 
} 

あなたがこれを使用したい場合はいつでも、あなたは初期化し、このようにそれを設定する必要があります

email = [[MFMailComposeViewController alloc] init]; 
email.mailComposeDelegate = self; 

// Subject 
[email setSubject:@"Testing"]; 

// Optional Attachments 
NSData *artwork = UIImagePNGRepresentation([UIImage imageNamed:@"albumart.png"]); 
[email addAttachmentData:artwork mimeType:@"image/png" fileName:@"albumart.png"]; 

// Body 
[email setMessageBody:@"This is the body"]; 

// Present it 
[self presentModalViewController:email animated:YES]; 
+0

ありがとうございます、これは正しい方向に私を指し、私を始めてください!どうもありがとう。 – bbullis21

0

これには2つの答えがあります。 3.0以前のiPhone OSをサポートする必要のあるアプリケーションでは、カスタムメッセージコンポーザーを構築するしかありません。または、FacebookのiPhoneアプリを作成したJoe Hewittによって構築されたコンポーネントを見てみたいかもしれません。あなたはボックスがMessageUI.frameworkを使用している場合上記で説明したようにまっすぐメールメッセージコンポーザーのUIを使用することができますiPhone SDK 3.0で

http://github.com/joehewitt/three20/blob/master/src/Three20/TTMessageController.h

。さらに

+0

リンクありがとうございます。 – bbullis21

+0

リンクが機能しません! – MaKo

3

Garettの大きな反響に、あなたが警告を受ける必要があります。

がisHTMLを追加: '-setMessageBody':

'MFMailComposeViewControllerは' に応答しないことがありそう完全なラインは次のように読み取ります

[メールsetMessageBody:@ "これは本文です" isHTML:NO];

0

messagecomposerです。アプリ内のメールやSMSをiOS 3.1から実行できます。 sdkが必要です4

関連する問題