创建地址簿UI类似于iPad的“联系人”应用程序

时间:2011-03-27 15:44:39

标签: iphone cocoa-touch ios ipad contacts

我正在为iPad编写一个应用程序,允许用户从地址簿中选择联系人并输入新的联系人 - 其中一些新联系人可能会保存回地址簿,有些可能只驻留在我的本地数据库中。我想要做的是创建一个类似于Apple的Contacts应用程序的界面。当我查看地址簿UI API时,看起来这个UI是专门为iPhone设计的。对我来说,看起来我有三个选择:1)允许地址簿导航控制器劫持全屏(我不知道如何将我本地存储的联系人放到列表中)2)显示地址簿UI popover 3)直接访问地址簿并从头开始构建我自己的UI。它是否正确?创建联系人列表很容易,但“新联系人”用户界面会很麻烦。我不能以某种方式在子视图中至少使用ABNewPersonViewController吗?

感谢您提供的任何帮助!

1 个答案:

答案 0 :(得分:1)

Apple希望您使用他们的ABAddressBook。 Apple Docs(查看地址簿编程指南)中所述的首选方法是通过使用recordID来维护指向真实地址簿的链接,该记录ID适用于您在本地工作但也在真实地址簿中的任何人。 Apple建议您在本地数据库中存储recordID,名字,姓氏和合成名称。此外,您还可以存储特定于您的应用的任何数据。

您可以使用peoplePicker的委托方法来保留person对象的句柄。

当您使用recordID时,如果真实地址簿中存在人员记录,则会有一个方法ABAddressBookGetPersonWithRecordID。然后,您可以使用ABPersonViewController对其进行编辑。一个选项是在您的人的地址簿中没有匹配的recordID的任何时候使用ABUnknownPersonViewController