gpt4 book ai didi

ios - 在 AddressBook iOS 中根据最近使用/最常用/紧急程度对联系人进行排序

转载 作者:可可西里 更新时间:2023-11-01 05:40:54 26 4
gpt4 key购买 nike

我需要根据最近使用/最常用/紧急程度对用户设备中的联系人进行排序,并将它们显示在单个 View 中(不像在电话应用中那样,它们显示在单独的选项卡中)。我对此进行了研究,但只了解按字母顺序对联系人进行排序。 AddressBook 框架允许这样做还是有其他方法?任何帮助将不胜感激。

最佳答案

。不幸的是,无法知道最近是否使用过记录。

但是,您可以使用下面指定的属性对地址簿中的记录进行排序:

AdressBook Record Properties这是一个根据创建日期降序排列记录的简单示例。

ABAddressBookRef addressBookRef = ABAddressBookCreateWithOptions(nil, NULL);

ABAddressBookRequestAccessWithCompletion(addressBookRef, ^(bool granted, CFErrorRef error) {

NSArray *allPeople = CFBridgingRelease(ABAddressBookCopyArrayOfAllPeople(addressBookRef));

NSArray *sortedPeople = [allPeople sortedArrayUsingComparator:^NSComparisonResult(id aRecord, id otherRecord) {
ABRecordRef aRecordRef = (__bridge ABRecordRef)aRecord;
ABRecordRef otherRecordRef = (__bridge ABRecordRef)otherRecord;

NSDate *aRecordCreationDate = CFBridgingRelease(ABRecordCopyValue(aRecordRef, kABPersonCreationDateProperty));
NSDate *otherRecordCreationDate = CFBridgingRelease(ABRecordCopyValue(otherRecordRef, kABPersonCreationDateProperty));

return [aRecordCreationDate compare:otherRecordCreationDate];
}];
});

CFRelease(addressBookRef);

关于ios - 在 AddressBook iOS 中根据最近使用/最常用/紧急程度对联系人进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26382625/

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