Iphone 将新电话号码添加到联系人应用程序中

Iphone 将新电话号码添加到联系人应用程序中,iphone,ios,xcode,Iphone,Ios,Xcode,我有以下代码打开“联系人”视图控制器: ABNewPersonViewController *newPersonVC = [[ABNewPersonViewController alloc] init]; newPersonVC.newPersonViewDelegate = self; UINavigationController *nc = [[UINavigationController alloc] initWithRootVi

我有以下代码打开“联系人”视图控制器:

ABNewPersonViewController *newPersonVC = [[ABNewPersonViewController alloc] init];
               newPersonVC.newPersonViewDelegate = self;
               UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:newPersonVC];
               [self presentModalViewController:nc animated:YES];
我想能够抓取
NSString*phoneNumber=@“(416)-555-5555”并将其放入“家庭电话”字段。我看了之后,要么什么也没出现,要么我的应用程序崩溃了。苹果的文档也帮不了什么忙

我如何解决这个问题?感谢您的帮助

NSString *phoneNumber = @"(416)-555-5555";
ABRecordRef newPerson = ABPersonCreate();
CFErrorRef error = NULL;
ABRecordSetValue(newPerson, kABPersonDepartmentProperty,(__bridge  CFTypeRef)@"Department", nil);
ABMutableMultiValueRef phoneNumberMultiValue = ABMultiValueCreateMutable(kABPersonPhoneProperty);
ABMultiValueAddValueAndLabel(phoneNumberMultiValue,(__bridge  CFTypeRef)phoneNumber, kABWorkLabel, nil);
ABRecordSetValue(newPerson, kABPersonPhoneProperty, phoneNumberMultiValue, nil);
NSAssert( !error, @"Something bad happened here." );

ABNewPersonViewController *newPersonVC = [[ABNewPersonViewController alloc] init];
[newPersonVC setDisplayedPerson:newPerson];
newPersonVC.newPersonViewDelegate = self;
UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:newPersonVC];
[self presentModalViewController:nc animated:YES];

希望对您有所帮助。

是否要在联系人应用程序中为现有联系人添加新号码??你只是在这样做吗?我想和你建立一个全新的关系。很有魅力!谢谢你的帮助;这是非常令人沮丧的。令人遗憾的是,苹果公司更新和更新代码的难度如此之大。不过,我很好奇:在现有联系人中添加电话号码的代码是什么?ABAddressBookRef addressbook=ABAddressBookCreate();NSArray*people=(uu-bridge-NSArray*)ABAddressBookCopyPeopleWithName(addressbook,CFSTR(“ContactName”));如果((people!=NULL)和(&[people count]){ABRecordRef person=(u桥ABRecordRef)[people objectAtIndex:0];ABPersonViewController*picker=[[ABPersonViewController alloc]init];picker.personViewDelegate=self;picker.displayedPerson=person;picker.allowsdediting=YES;[self.navigationController-pushViewController:picker-animated:YES];}CFRelease(addressbook);好的。谢谢;这很有帮助。