2

デリゲート メソッドを使用して custom を表示すると、メソッドが呼び出されなくなることに気付きました。contactPicker:didSelectContactCNContactViewControllercontactPicker:didSelectContactProperty

func openPicker() {
    let picker = CNContactPickerViewController()
    picker.delegate = self
    self.presentViewController(picker, animated: true, completion: nil)
}

func contactPicker(picker: CNContactPickerViewController, didSelectContact contact: CNContact) { 
    //contactPicker:didSelectContactProperty works when this method is commented out

    let controller = CNContactViewController(forContact: contact)
    controller.delegate = self
    self.navigationController?.pushViewController(controller, animated: true)
}

func contactViewController(viewController: CNContactViewController, shouldPerformDefaultActionForContactProperty property: CNContactProperty) -> Bool {

    return false
}

func contactPicker(picker: CNContactPickerViewController, didSelectContactProperty contactProperty: CNContactProperty) {

    print("selected contact property")
}

CNContactViewController カスタムを表示して、ユーザーがプロパティを選択したときに通知を受け取るにはどうすればよいですか?

を使用contactViewController:shouldPerformDefaultActionForContactPropertyして選択したデータを記録することはできますが、その方法の悪用のようです。

4

0 に答える 0