Tôi có một lớp con của ABPeoplePickerNavigationController
để xử lý việc chọn số điện thoại liên hệ trong ứng dụng của mình. Mọi thứ hoạt động tốt trên iOS 7 trở xuống.Không thể chọn liên hệ trên iOS 8
Trên iOS 8, tuy nhiên, số ABPeoplePickerNavigationControllerDelegate
của tôi không bị trúng khi chọn số điện thoại. Thay vào đó, nó chỉ gọi số điện thoại đó.
Tôi nhận thấy rằng phương pháp tôi đang sử dụng để xử lý lựa chọn liên hệ trong iOS 7 (peoplePickerNavigationController:shouldContinueAfterSelectingPerson:property:identifier:
) không được chấp nhận trong iOS 8. Phương pháp này đã được thay thế bằng peoplePickerNavigationController:didSelectPerson:property:identifier:
.
Tôi biết đại biểu của mình được đặt vì tôi đã nhận được cuộc gọi lại phương thức peoplePickerNavigationControllerDidCancel:
thành công.
Có ai khác đã gặp sự cố này không?
Dưới đây là một đoạn mã của ABPeoplePickerNavigationController
lớp con của tôi:
- (void)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker didSelectPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier {
[self peoplePickerNavigationController:peoplePicker shouldContinueAfterSelectingPerson:person property:property identifier:identifier];
}
- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier {
...do stuff...
return NO;
}
- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person {
return YES;
}
- (void)peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker {
[self dismissViewControllerAnimated:self.shouldAnimateDismiss completion:NULL];
}
Bạn đã chỉ định 'predicateForSelectionOfProperty' là gì? – Rob
Bạn đang xây dựng với Xcode 6 và dự án của bạn có SDK cơ sở của iOS 8 không? – rmaddy
@Rob Không có gì. Nó đã luôn luôn làm việc mà không cần thiết lập đó. – Alexander