Как использовать CNContactPickerdelegate для выбора нескольких номеров в одном контакте в задаче c?
Как выбрать несколько номеров в одном контакте с помощью делегата cncontact picker? Я использую метод ниже, но я не мог выбрать номера - (void)contactPicker:(CNContactPickerViewController *)picker didSelectContactProperty:(CNContactProperty *)contactProperty;
1 ответ
Я давно решил свою проблему, опубликовав в последнее время это мой ответ, который может быть полезен для других, поэтому я публикую здесь.
#pragma mark - CNContactPickerViewController Delegate method implementation
(void)contactPicker:(CNContactPickerViewController *)picker didSelectContact:(CNContact *)contact
{
NSMutableArray *contactNumberArray = [[NSMutableArray alloc]init];
selectedName=[NSString stringWithFormat:@"%@",contact.givenName];
NSLog(@"%@",selectedName);
NSString *tempString = [NSString stringWithFormat:@"name : %@ %@ %@\n",contact.givenName, contact.familyName, contact.organizationName];
// // 1. (Phone Numbers)
tempString = [NSString stringWithFormat:@"%@phoneNumbers : ",tempString];
// NSArray*phoneNumber = contact.phoneNumbers;
for (CNLabeledValue *phoneNumber in contact.phoneNumbers)
{
CNPhoneNumber *phone = phoneNumber.value;
tempString = [NSString stringWithFormat:@"%@<%@>",tempString,phone.stringValue];
[contactNumberArray addObject:phone];
selectedPhNumber=[[NSString stringWithFormat:@"%@",phone.stringValue] stringByReplacingOccurrencesOfString:@" " withString:@""];
NSLog(@"%@",selectedPhNumber);
}
//2. (Emails)
tempString = [NSString stringWithFormat:@"%@\n Email : ",tempString];
for (CNLabeledValue *email in contact.emailAddresses)
{
selectedEmail=[NSString stringWithFormat:@"%@", email.value];
tempString = [NSString stringWithFormat:@"%@<%@>",tempString,email.value];
[contactNumberArray addObject:email];
NSLog(@"%@",selectedEmail);
}
[self sendRefferelDetailsToServer];
}