在CNContachPicker的didSelect上,我正在调用一个segue,但这不起作用,因为当用户单击任何联系人时,首先调用didSelect然后关闭。如何处理这种情况?

    func contactPicker(_ picker: CNContactPickerViewController, didSelect contact: CNContact) {
            self.performSegue(withIdentifier: "AToB", sender: contact)

}

最佳答案

试试这样的:

func contactPicker(_ picker: CNContactPickerViewController, didSelect contact: CNContact) {

picker.dismiss(animated:true, completion: {
  self.performSegue(withIdentifier: "AToB", sender: contact)

    })
 }

你应该先关闭ContactPicker。使用完成块。当picker被解除,然后您可以执行任何操作时。只是管用

07-27 22:34