如何更新:(COCOA / OSX)ABPerson / ABMultiValue(phonenumbers)?

时间:2011-01-11 22:01:33

标签: cocoa macos addressbook abaddressbook abmultivalue

II试图改变ABPerson / ABMultiValue(电话号码)的值。

无论如何更新这些?

ABAddressBook *ab = [ABAddressBook sharedAddressBook];  
NSArray *persons = [ab people];

int j=[persons count];

for (int i=0; i<j; i++) {
    ABPerson *person = [persons objectAtIndex:i];               
    ABMultiValue *phonenumbers = [person valueForProperty:kABPhoneProperty];
    //  update here *phonenumbers
}

谢谢!

1 个答案:

答案 0 :(得分:2)

尝试致电:

ABMultiValueRef phoneNumbers = ABMultiValueCreateMutable(kABPersonPhoneProperty);
ABMultiValueAddValueAndLabel(phoneNumbers, value, label, null);
ABRecordSetValue(person, kABPersonPhoneProperty, phoneNumbers, NULL);

为您要添加的每个值添加其中一个:ABMultiValueAddValueAndLabel(phoneNumbers, value, label, null)