как отсортировать книгу контакта iPhone?

Как я могу отсортировать (или получить сортированный массив), книга контакта iPhone именем и фамилией программно??

Любая справка будет хорошо цениться...!Спасибо

14
задан Marco 19 January 2012 в 12:39
поделиться

2 ответа

Вызов ABAddressBookCopyArrayOfAllPeople () , чтобы получить массив всех записей о людях в адресной книге. Затем следуйте документации :

Чтобы отсортировать массив людей, используйте функцию CFArraySortValues ​​с функцией ABPersonComparePeopleByName в качестве компаратора и контекстом типа ABPersonSortOrdering. Желаемый порядок сортировки пользователя, возвращаемый ABPersonGetSortOrdering, обычно является предпочтительным контекстом.

В следующем листинге кода показан пример сортировки всей базы данных адресной книги:

 ABAddressBookRef addressBook = ABAddressBookCreate (); 
CFArrayRef people = ABAddressBookCopyArrayOfAllPeople (addressBook); 
CFMutableCutableArrayRefArutableCreateMutableCrayo (
kCFAllocatorDefault, 
CFArrayGetCount (люди), 
люди 
); 
 
CFArraySortValues ​​(
peopleMutable, 
CFRangeMake (0, CFArrayGetCount (peopleMutable)), 
 (CFComparatorFunction) ABPersonComparePeopleByName, 
 (void *) ABPersonGetSortOrdering () 
); 
 
CFRelease (адресная книга); 
CFRelease (люди); 
CFRelease (peopleMutable); 
 
26
ответ дан 1 December 2019 в 07:19
поделиться

Как насчет этого: -

ABAddressBookCopyArrayOfAllPeopleInSourceWithSortOrdering

объявлено в ABPerson.h

7
ответ дан 1 December 2019 в 07:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: