- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想让我的应用程序的用户能够从他们的地址簿中获取他们的联系人。我可以展示 ABPeoplePickerNavigationController,用户可以选择一个人,然后 ABPPNC 再次关闭。
这就是我用来展示它的代码:
let peopleController = ABPeoplePickerNavigationController()
peopleController.delegate = self
peopleController.predicateForSelectionOfPerson = NSPredicate(value: true)
self.presentViewController(peopleController, animated: true, completion: nil)
并且调用了 peoplePickerNavigationController didSelectPerson 函数,但我不知道如何从 ABRecord 类型的人那里获取信息。在 https://developer.apple.com/library/ios/documentation/AddressBookUI/Reference/ABPeoplePickerNavigationController_Class/index.html#//apple_ref/doc/constant_group/Address_Book_Properties Apple 说有一些地址簿属性,例如:ABPersonNamePrefixProperty 或 ABPersonMiddleNameProperty,但我不知道如何使用它。
所以基本上我想做这样的事情:
func peoplePickerNavigationController(peoplePicker: ABPeoplePickerNavigationController!, didSelectPerson person: ABRecord!) {
// What I want to do:
let name = person.lastName
let firstName = person.firstName
let image = person.image
}
最佳答案
经过长时间的搜索,我找到了适合我的答案:
func peoplePickerNavigationController(peoplePicker: ABPeoplePickerNavigationController!, didSelectPerson person: ABRecord!) {
var firstName: String?
if ABRecordCopyValue(person, kABPersonFirstNameProperty) != nil{
firstName = ABRecordCopyValue(person, kABPersonFirstNameProperty).takeRetainedValue() as? String
}
var lastName: String?
if ABRecordCopyValue(person, kABPersonLastNameProperty){
lastName = ABRecordCopyValue(person, kABPersonLastNameProperty).takeRetainedValue() as? String
}
var pImage: UIImage?
if person != nil && ABPersonHasImageData(person){
pImage = UIImage(data: ABPersonCopyImageData(person).takeRetainedValue())
}
}
关于xcode - 使用 ABPeoplePickerNavigationControllerDelegate 从 ABRecord 获取联系人姓名或图像等数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32329265/
我需要从应用程序中引用 ABPerson 记录。我用unique ID提供者: - (NSString *)uniqueId 并将其附加到我的应用内联系人记录中。 另外,我保存ABPerson's
我是 iPhone 开发新手,您能告诉我如何序列化 AdressBook 记录吗? 我已阅读stackoverflow - How do I serialize a simple object in
我想将 ABRecord 转换为字符串 textfield.text=(NSString *)(ABRecordGetRecordID(ref)); 我该怎么做。 最佳答案 ABRecordID 只是
我看了一下SE问题here [Avinash 的回答] 和 Apple 资源 here [第 18 页底部和第 19 页顶部] 我试图为 ABRecord 设置地址。我尽力从 Objective-C
我正在尝试通过我的应用程序更新地址簿中现有联系人的内容,但不需要 UI。场景是这样的: 1 用户输入号码和姓名2 应用程序检查该姓名是否在联系人列表中3 如果是,则检查该号码是否是该姓名的联系人之一4
我有这个代码: - (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker
我正在尝试通过我的应用程序更新地址簿中现有联系人的内容,但不需要 UI。场景是这样的: 1 用户输入一个数字和一个名字2 应用程序检查该名称是否在联系人列表中3 如果是,则检查该号码是否是该名称的联系
我想让我的应用程序的用户能够从他们的地址簿中获取他们的联系人。我可以展示 ABPeoplePickerNavigationController,用户可以选择一个人,然后 ABPPNC 再次关闭。 这就
我是一名优秀的程序员,十分优秀!