В ios8 я хотел бы получить доступ к свойствам контакта, если у него есть несколько телефонных номеров, но я не знаю, как это сделать в iOS8.Показать свойства контакта, если у него есть более одного номера телефона с ios8
Вот мой код в iOS7:
-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person{
//If person has just one phone number
ABMultiValueRef phonesRef = ABRecordCopyValue(person, kABPersonPhoneProperty);
if(ABMultiValueGetCount(phonesRef) == 1){
CPIContact* contact = [self getCPIContactFromPerson:person andPhoneIndex:0];
[self addContact:contact];
// Dismiss the address book view controller.
[_addressBookController dismissViewControllerAnimated:YES completion:nil];
return NO;
}else if(ABMultiValueGetCount(phonesRef) == 0){
[[[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Common_information",nil) message:NSLocalizedString(@"EditCallSMS_noNumber", nil) delegate:nil cancelButtonTitle:NSLocalizedString(@"Common_ok",nil) otherButtonTitles:nil] show];
return NO;
}
else{
return YES;
}
}
Я знаю, что я должен использовать метод didSelectPerson от iOS8, но я не знаю, как сказать приложение, которое может продолжаться после выбора человека, как в IOS 7.
Я читал о предикатаForSelectionOfPerson по документации на яблоки, но я не понимаю, как его использовать.
Заранее спасибо за вашу помощь.
Спасибо! Вот что мне нужно! Это было наоборот («% K. @ count <2»), но теперь я понимаю, как использовать предикаты с сборщиками людей. – Leep
Вам также может понадобиться: если ([сборщика respondsToSelector: @selector (setPredicateForEnablingPerson :)]) { picker.predicateForEnablingPerson = [NSPredicate predicateWithFormat: @ "EmailAddresses @ число> 0"]; } Без этого мое приложение не будет выбирать контакт вообще –
@Leep Когда я добавляю '("% K. @ count <2 ")', все контакты с менее чем двумя номерами телефонов выделены серым цветом. – user1324887