简体   繁体   English

在联系人应用中添加新电话号码

[英]Adding a new phone number into contact app

I have this code to open the contacts view controller: 我有这段代码打开联系人视图控制器:

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

I want to be able to grab NSString *phoneNumber = @"(416)-555-5555"; 我希望能够获取NSString *phoneNumber = @"(416)-555-5555"; and put it into the "home phone" field. 并把它放入“家庭电话”领域。 I have looked through other answers and I end up getting either nothing popping up or my app crashes. 我已经查看 其他 答案 ,最终我没有弹出任何内容或我的应用程序崩溃。 Apple's documentation doesn't help much either. Apple的文档也没有多大帮助。

How do I solve this? 我该如何解决这个问题? Any help is appreciated. 任何帮助表示赞赏。

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];

Hope it Help's you. 希望它能帮到你。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM