从APContact

时间:2016-03-27 14:33:42

标签: ios abaddressbook

我正在使用APAddressBook,这有助于我以简单的方式使用地址簿。是的我知道Contacts和ContactsUI框架现在都在那里,但它们是iOS9 +,我也想支持iOS8。

我遇到的问题是,它只给我一个记录ID作为Int来识别联系人。我现在想要打开ABPersonViewController来查看联系人的详细信息。我需要ABRecord才能执行此操作。我试图自己解决一些问题,这就是结果,这给了我一个EXC_BAD_ACCESS错误。

let apContact: APContact = ...

let recordId = ABRecordID(apContact.recordID.intValue)
let ab = ABAddressBookCreateWithOptions(nil, nil).takeRetainedValue()
let abRecord = ABAddressBookGetPersonWithRecordID(ab, recordId).takeRetainedValue()

let controller = ABPersonViewController()
controller.displayedPerson = abRecord
navigationController?.pushViewController(controller, animated: true)

欢迎任何有关如何以正确方式进行的建议!

0 个答案:

没有答案