gpt4 book ai didi

ios - 如何从 iOS 中的联系人中提取姓名?

转载 作者:行者123 更新时间:2023-11-28 05:32:15 26 4
gpt4 key购买 nike

我已经从通讯录中提取了一个联系人

现在我需要在同一 View Controller 中向 TextView UI 显示名称。

如何从 ABRecord 中提取名称?

这是我的代码。

@IBAction func addContact(sender: AnyObject) {
var peoplePicker = ABPeoplePickerNavigationController()
peoplePicker.peoplePickerDelegate = self
self.presentViewController(peoplePicker, animated: true, completion: nil)

}

func peoplePickerNavigationControllerDidCancel(peoplePicker: ABPeoplePickerNavigationController!) {
dismissViewControllerAnimated(true, completion: nil)
}


func peoplePickerNavigationController(peoplePicker: ABPeoplePickerNavigationController!, didSelectPerson person: ABRecord!) {

var name : String! = ABRecordCopyCompositeName(person)
}

这里函数 ABRecordCopyCompositeName 返回非托管我不能强制转换为字符串。它说不可兑换。

我是 iOS 开发新手。请帮忙。

最佳答案

使用 takeUnretainedValue() 和 takeRetainedValue() 获取 CFString 对象并将其转换为 NSString

func peoplePickerNavigationController(peoplePicker: ABPeoplePickerNavigationController!, didSelectPerson person: ABRecord!) {
let nameCFString : CFString = ABRecordCopyCompositeName(person).takeRetainedValue()
let name : NSString = nameCFString as NSString
}

关于ios - 如何从 iOS 中的联系人中提取姓名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27456553/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com