gpt4 book ai didi

ios - 如何使用 Contacts with Swift 对联系人进行排序

转载 作者:IT王子 更新时间:2023-10-29 05:39:13 27 4
gpt4 key购买 nike

我已经阅读了有关排序联系人的苹果官方文档,但我不确定如何实现它。所以,这是获取请求:

let fetchRequest = CNContactFetchRequest(keysToFetch: keysToFetch)

和我喜欢的排序顺序:

let sortOrder = CNContactSortOrder.UserDefault

这就是我通常获取联系人的方式:

    do {
try store.enumerateContactsWithFetchRequest(fetchRequest, usingBlock: { (let contact, let stop) -> Void in
self.contacts.append(contact)
})
}
catch let error as NSError {
print(error.localizedDescription)
}

现在我应该如何处理 sortOrder?我应该在整个抓取过程中的什么地方包括哪些内容?

最佳答案

针对 Swift 4.0 进行了更新

let fetchRequest = CNContactFetchRequest(keysToFetch: [CNContactGivenNameKey as CNKeyDescriptor, CNContactFamilyNameKey as CNKeyDescriptor, CNContactMiddleNameKey as CNKeyDescriptor, CNContactEmailAddressesKey as CNKeyDescriptor,CNContactPhoneNumbersKey as CNKeyDescriptor])

fetchRequest.sortOrder = CNContactSortOrder.userDefault

let store = CNContactStore()

do {
try store.enumerateContacts(with: fetchRequest, usingBlock: { (contact, stop) -> Void in
// print(contact.phoneNumbers.first?.value ?? "not found")

})
}
catch let error as NSError {
print(error.localizedDescription)
}

旧版本这样写

 fetchRequest.sortOrder = CNContactSortOrder.UserDefault

创建 fetchRequest 对象后所以你的最终输出就像

let fetchRequest = CNContactFetchRequest(keysToFetch: keysToFetch)

fetchRequest.sortOrder = CNContactSortOrder.UserDefault

do {
try store.enumerateContactsWithFetchRequest(fetchRequest, usingBlock: { (let contact, let stop) -> Void in
self.contacts.append(contact)
})
}
catch let error as NSError {
print(error.localizedDescription)
}

关于ios - 如何使用 Contacts with Swift 对联系人进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34851296/

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