sorting - Swift AddressBook - 复制源中的所有人员,但存在排序问题

标签 sorting swift addressbook

这是我遇到的问题。非常感谢任何帮助。

enter image description here

代码如下:

var addressBook: ABAddressBookRef = {
    var error: Unmanaged<CFError>?
    return ABAddressBookCreateWithOptions(nil,
    &error).takeRetainedValue() as ABAddressBookRef
}()    

var source = ABAddressBookCopyDefaultSource(addressBook)!

var allPeople = ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(addressBook, source: source, sortOrdering: kABPersonSortByFirstName)

错误消息:无法将表达式的类型“(ABAddressBookRef,源:@lvalue Unmanaged,sortOrdering:Int)”转换为类型“$T4”

最佳答案

两个错误:ABAddressBookCopyDefaultSource()返回 Unmanaged<ABRecord>! ,所以你必须调用takeRetainedValue() 关于返回值。

ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering() 的最后一个参数必须 转换为预期类型 ABPersonSortOrdering :

var source: ABRecord = ABAddressBookCopyDefaultSource(addressBook).takeRetainedValue()

var allPeople = ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering(addressBook,
    source, ABPersonSortOrdering(kABPersonSortByFirstName))

关于sorting - Swift AddressBook - 复制源中的所有人员,但存在排序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29449894/

相关文章:

iOS:如何在推送到 viewController 后继续显示 subview

algorithm - Kotlin 默认使用什么样的排序?

sorting - Core Data 后台排序

c# - C# 中的 Datagridview - 列的自定义排序

ios - 如何使用 Sprite Kit 制作具有 3D 效果的戒指?

swift - UIAlertController 按钮中的禁用颜色

iphone - 地址簿中记录的 ABRecordID(地址簿中插入记录的唯一 ID)

objective-c - ios dev ABMultiValueRemoveValueAndLabelAtIndex 返回 true 但不起作用

python-3.x - python : How to extract addresses from a sentence/paragraph (non-Regex approach)?

javascript - 按属性数组对对象数组进行排序