【问题标题】:ios - How to use MFMailComposeViewController in a "while" loopios - 如何在“while”循环中使用 MFMailComposeViewController
【发布时间】:2011-11-29 22:09:41
【问题描述】:

我需要使用 MFMailComposeViewController 在“while”循环中发送电子邮件。循环基于数组。 我试图做一些类似于这个类的标准用法的事情,但我只看到数组的第一个元素的模式视图。所以只发送第一封电子邮件。

你知道怎么做吗?

while (x = [enumerator nextObject]) {
   MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
   picker.mailComposeeDelegate = self;
   [...] // set properties of the email

   [self presentModalViewController:picker animated:YES];
   [picker: release];
}

【问题讨论】:

  • while 循环中有什么?您是否向许多人发送相同的电子邮件?
  • 在显示下一个模态视图之前,您需要以某种方式等待处理第一封电子邮件。而且,当然,由于“等待”即使不是非法也是不道德的,因此您需要放弃显式的 while 循环,而是在每次通知模态视图的委托时重新执行相同的例程。上一封电子邮件已完成。跨度>
  • (您意识到您可以在一封电子邮件中指定多个电子邮件地址,对吧?)
  • 不,这不是同一封电子邮件...是的,我知道我可以在一封电子邮件中拥有多个收件人...这不是我的问题。

标签: ios uiviewcontroller while-loop


【解决方案1】:

邮件发送成功后做一些代码;

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

   //call some code here or call some method

}

【讨论】:

  • 其实我现在已经必须在委托方法中放一些代码了,谢谢,但我的问题是我应该放什么。我认为我们正在谈论异步循环,我的问题是我不知道我们如何做到这一点。
  • 您知道如何编写“一些代码”以返回 while 循环吗?
猜你喜欢
  • 2014-11-01
  • 1970-01-01
  • 2018-02-06
  • 2015-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多