Swift CNContactPicker-用户在使用搜索后无法选择联系人

Swift CNContactPicker-用户在使用搜索后无法选择联系人,swift,macos,cncontactpicker,Swift,Macos,Cncontactpicker,我有一个OSX应用程序,它使用CNContactPicker导入用户选择的单个联系人的详细信息。如果用户输入联系人选择器并使用搜索栏返回单个联系人(即列表中只有一个结果)-则无法选择此联系人。如果用户搜索返回多个联系人(即,他们可以从多个联系人列表中选择一个联系人),则效果良好 例如:我创建了一个名为“测试”的联系人。在这个屏幕截图中,您将看到我搜索了测试,搜索列表中有1个结果。我无法选择此联系人 在我看来,这似乎是苹果的一个bug,但我想知道是否有其他人在Mac应用程序中使用CNContac

我有一个OSX应用程序,它使用CNContactPicker导入用户选择的单个联系人的详细信息。如果用户输入联系人选择器并使用搜索栏返回单个联系人(即列表中只有一个结果)-则无法选择此联系人。如果用户搜索返回多个联系人(即,他们可以从多个联系人列表中选择一个联系人),则效果良好

例如:我创建了一个名为“测试”的联系人。在这个屏幕截图中,您将看到我搜索了测试,搜索列表中有1个结果。我无法选择此联系人

在我看来,这似乎是苹果的一个bug,但我想知道是否有其他人在Mac应用程序中使用CNContactPicker也有同样的问题

代码如下:

@IBAction func importContacts(_ sender: NSButton) {
    popover = CNContactPicker()
    (popover! as! CNContactPicker).delegate = self
    (popover! as! CNContactPicker).showRelative(to: self.view.bounds, of: self.view, preferredEdge:NSRectEdge.maxX)
}

func contactPicker(_ picker: CNContactPicker, didSelect contact: CNContact) {
    importedContact = contact
}

func contactPickerDidClose(_ picker: CNContactPicker) {
    if (importedContact != nil) {
        self.populateDetailsFromContact(importedContact! as! CNContact)
    }
}

在这种情况下,“didSelect”委托函数不会启动,因此我的“importedContact”变量为nil。我在一个小项目中复制了该场景。

如果此联系人与其他联系人在列表中,是否可以选择此联系人?请发布a。是如上所述,如果联系人与其他联系人在列表中,则可以选择该联系人。如果联系人在列表中单独存在,则无法选择该联系人。鉴于我最初的例子,它应该是可复制的。1.运行CNContactPicker。2.执行搜索,搜索结果为单个联系人。3.尝试选择该联系人。我已经这样做了,没有发现任何问题。哪个
显示键
?实施了哪些
CNContactPickerDelegate
方法?当您尝试选择该联系人时会发生什么情况?有可能在一个小的测试项目中重现这个问题吗?嗨,你能重新打开这个帖子吗?这对我来说仍然是个问题。我添加了一些代码和一个屏幕截图来澄清问题,并在一个小测试项目中重现了这个问题。它看起来像一个bug。我认为macOS 10.13没有任何问题。在macOS 10.15上,无法选择找到的第一个联系人。