完了ブロック構文でMFMailComposeViewController プロパティを使用したいのですmailComposeDelegate
が、それが可能かどうかはわかりません。TWTweetComposeViewController completionHandler
プロパティの動作に似たもの:
TWTweetComposeViewController __weak *twee = tweeter;
tweeter.completionHandler = ^(TWTweetComposeViewControllerResult result) {
// code here
};
私が持っているコードはMFMailComposeViewControllerを作成しviewController
ますが、この「電子メールで共有」機能はUIViewcontroller
カスタムMYSharing
クラスではなく、参照を保存する必要があります。
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
// more code here
_viewController = viewController;
picker.mailComposeDelegate = self;
[viewController presentModalViewController:picker animated:YES];
mailComposeController:didFinishWithResult:error:
from MFMailComposeViewControllerDelegateはそれを使用し_viewController
てモーダルを閉じます。
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error {
[_viewController dismissModalViewControllerAnimated:YES];
}
ブロックをよく理解していないのですが、このような構文はありますか?
picker.mailComposeDelegate = ^(???)(??? ??? ???) {
[viewController dismissModalViewControllerAnimated:YES];
}
MFMailComposeViewController(BlocksKit) (github にソースがあります)を見つけましたが、それでも構文変換でつまずきます。