仅显示/使用MFMailComposeViewController中的“收件人:”字段

时间:2012-12-06 02:36:45

标签: iphone ios ipad

在我的应用程序中,我需要允许用户组装一个" To list"电子邮件。内置邮件编写器完全符合我的要求,只要能够选择联系人。它有一个下拉列表,显示您正在键入的内容的潜在匹配联系人。然而,这不是发送电子邮件,因此我不会'想要CC,主题和身体控制。

只是" To"以某种方式在控件中可用的字段?如果不编写相当多的代码,我真的不知道如何做到这一点。

我想我总是可以调出一个邮件作曲家,然后是另一个视图来掩盖表单的其余部分,但我宁愿只使用To字段。

这可能吗?

1 个答案:

答案 0 :(得分:1)

也许这会帮助别人。经过多次搜索,我没有看到任何方法只利用To:字段。我最终编写了自己的一组视图控制器来复制动作和行为。我做了以下课程:

  • 联系人(名字,姓氏和电子邮件的字符串属性)
  • Contacts(以各种格式创建Contact对象的NSArray的类方法)
  • ContactFormViewController(类似于邮件编辑器的To:字段)
  • ContactTableViewController(显示所有带有擦除器的联系人列表)

在Contacts类中,我使用ABAddressBookRequestAccessWithCompletion创建一个Contact *对象的NSArray,在构造它时对数组进行排序。

然后我有两个视图控制器,就像邮件编辑器一样。

在第一个视图控制器上,有一个用于输入电子邮件地址或名称的UITextField,一个用于显示与输入字符串匹配的联系人的UITableView,以及一个UIScrollView,我在每次在表中选择一个联系人时添加UIBctons 。 UITextView上的每个editingChanged事件都会创建/更新UITableView的数据源。还有两个UIButton。一个是将手动键入的电子邮件地址添加到列表中选择的联系人(此按钮仅在文本输入与emiail正则表达式匹配时才可见),另一个按钮用于显示UITableViewController,如果用户宁愿浏览联系人而不是键入联系人并选择结果。