3

我应该检索/提取 ABPerson 的所有可用属性。IOS ABPerson官方文档 不包含MACOS可用方法【ABPerson属性】

我能做些什么?

4

2 回答 2

1

您可以使用个人信息属性标题下的ABPerson 参考中找到的所有属性创建一个 NSArray/NSSet 。

然后只需使用 for-in 像这样通过 NSArray 。

NSArray *allPropertiesForABPerson = [NSArray arrayWithObjects: @"kABPersonFirstNameProperty", @"kABPersonLastNameProperty", /*rest of props here*/, nil];

for (id property in allPropertiesForABPerson) {
  id valueForProperty = ABRecordCopyValue(theRecord, property);
  NSLog(@"Value: %@ for property: %@", valueForProperty, property);
  CFRelease(valueForProperty);
}
于 2012-09-11T12:41:03.400 回答
1

假设您有一个ABPerson被调用的myFriend. 您可以通过以下方式访问其名字:

NSString* firstName = (__bridge_transfer NSString*)ABRecordCopyValue(myFriend, kABPersonFirstNameProperty);

当然,您可以替换kABPersonFirstNameProperty为其他属性常量来获取其他属性。

这里是其中的一些:

kABPersonFirstNameProperty
kABPersonLastNameProperty
kABPersonMiddleNameProperty
kABPersonPrefixProperty
kABPersonSuffixProperty
kABPersonNicknameProperty
kABPersonFirstNamePhoneticProperty
ckABPersonLastNamePhoneticProperty
kABPersonMiddleNamePhoneticProperty
kABPersonOrganizationProperty
kABPersonJobTitleProperty
kABPersonDepartmentProperty
kABPersonEmailProperty
kABPersonBirthdayProperty
kABPersonNoteProperty
kABPersonCreationDateProperty
kABPersonModificationDateProperty

有关 ABPerson 的更多信息: https ://developer.apple.com/library/ios/documentation/AddressBook/Reference/ABPersonRef_iPhoneOS/#//apple_ref/doc/constant_group/Personal_Information_Properties

于 2015-05-06T02:26:04.783 回答