だから私はこのメソッドを呼び出しています:
- (void)newPersonViewController:(ABNewPersonViewController*)newPersonViewController didCompleteWithNewPerson:(ABRecordRef)person
ABRecordRef を返します。しかし、ABGroupAddMember を使用しているグループには表示されません。
ABRecordRef を手動で作成すると、グループを設定できますが、デリゲート メソッドから返された人物オブジェクトを使用することはできません。
たとえば、このコードは機能します (ここの投稿から借用、リンクが見つかりません):
CFErrorRef error = NULL;
// create address book record
ABAddressBookRef addressBook = ABAddressBookCreate();
// create a person
ABRecordRef person = ABPersonCreate();
// first name of the new person
ABRecordSetValue(person, kABPersonFirstNameProperty, @"FirstName" , nil);
// his last name
ABRecordSetValue(person, kABPersonLastNameProperty, @"LastName", nil);
//add the new person to the record
ABAddressBookAddRecord(addressBook, person, nil);
ABAddressBookSave(addressBook, &error);
ABRecordRef group = ABGroupCreate(); //create a group
ABRecordSetValue(group, kABGroupNameProperty,@"My Group", &error); // set group's name
ABAddressBookAddRecord(addressBook, group, &error); // add the group
ABAddressBookSave(addressBook, &error);
ABGroupAddMember(group, person, &error); // add the person to the group
ABAddressBookSave(addressBook, &error);
//save the record
ABAddressBookSave(addressBook, nil);
// relase the ABRecordRef variable
CFRelease(person);
返された Person ABRecordRef オブジェクトでそのコードを機能させるにはどうすればよいですか?
ありがとう。