对于iPhone项目我正在使用Erica Sadun的ABContactsHelper。 为了显示联系人,我不想使用与iOS在例如iOS中使用的排序顺序相同的排序顺序。 AdressBook.app。 有可能获得这些信息吗?
我试过了:
+ (BOOL) firstNameSorting;
+ (BOOL) lastNameSorting;
来自ABContactsHelper类,但这些总是给我一个名字排序。即使我在联系人设置中设置姓氏,名字。 提前谢谢。
克里斯
答案 0 :(得分:5)
ABPersonGetSortOrdering()
应该有用。
ABPersonSortOrdering sortOrder = ABPersonGetSortOrdering();
if (sortOrder == kABPersonSortByFirstName) {
// sort by firstName
}
else {
// sort by lastName
}
如果你看看Ericas代码,你会发现它没有返回排序顺序。它实际上返回显示格式。
来自ABContactsHelper.m:
// Sorting
+ (BOOL) firstNameSorting
{
return (ABPersonGetCompositeNameFormat() == kABPersonCompositeNameFormatFirstNameFirst);
}
那是完全错误的。
也许你想跳过那个4岁的,没有维护的代码并自己写一些东西。 AddressBook框架并不难理解。