다른 사람의 코드 작업. 정말이 코드에서 정확히 무슨 일이 일어나고 있는지 혼란 스럽습니다.사람 속성 설정
ABAddressBookRef addressBook = ABAddressBookCreate();
ABRecordRef persons = ABAddressBookGetPersonWithRecordID(addressBook, x);
CFErrorRef *error=NULL;
ABAddressBookRemoveRecord(addressBook, persons, error);
ABAddressBookSave(addressBook, error);
ABRecordRef persons = ABPersonCreate();
ABRecordSetValue(persons, kABPersonFirstNameProperty, firstName , nil);
수행해야 할 작업은 ABRecordRef 사람을 만들어야한다는 것입니다. 그의 속성을 설정하고 기록/세부 정보를 표시해야합니다. 그는 결코 주소록에 저장되어서는 안됩니다. 이것을하는 방법일까요? 도움이 필요하다.
편집 : 속성을 person에게 설정하는 것 외에도,보기 컨트롤러를 밀어 사람을 볼 수 있도록 다음 코드가 추가되었습니다.
MyContactDetailViewcontroller *personContactDetail = [[MyContactDetailViewcontroller alloc] init];
personContactDetail.displayedPerson = persons;
personContactDetail.passedSelectedContactData = selectedContactsOnlyData;
[self.navigationController pushViewController:personContactDetail animated:YES];
[personContactDetail release];
MyContactDetailViewcontroller
서브 클래스 ABPersonViewController
. 또는 ABUnknownPersonViewController
을 사용하는 것이 더 쉽습니다.
당신이 연락처가 주소록에 중복 될 수있는 경우를
이 정확히 무슨 일이 여기에 무슨 일이 일어나고있다
ABAddressBookSave()를 호출하면 사람이 실제로 주소록에 저장되고 해당 속성에 대한 변경 사항이 주소록에도 반영됩니다. 그래? –
사람을 만든 후에 ABAddressBookSave()가 호출되지 않으므로 NO. ABAddressBookSave()를 YES보다 다시 호출하면 (그 시점까지 변경 한 사항 만). –
'ABAddressBookSave (addressBook, error);'. 이 코드는 무엇을합니까? 재산이없는 사람을 구할 수 있습니까? –