XCode8 Swift3 - 打开联系人列表并通过单击检索数据时出现问题

XCode8 Swift3 - Problems with open contact list and retrieve data by click

目前我正在开发我的第一个 iOS 应用程序,我对代码有点迟钝和粗鲁(它很奇怪并且与 java 不同)而且,如果这是唯一的问题,随着新的更新,Xcode 使我的代码变得疯狂。我想我解决了大部分问题,但是...

之前,在其中一个屏幕上,应用程序打开了一个地址簿,让用户点击其中一个;单击完成后,联系人列表关闭,该联系人的数据被检索到控制器。现在,如果用户单击联系人,则会显示更多信息,但任何信息都来自控制台日志。

我尝试了我在网上找到的所有内容,但不确定为什么不起作用。

之前,我使用 Addressbook(或类似的东西),但我已经尝试过 CNContact

这是按钮代码

@IBAction func addNewContactOnClick(_ sender: AnyObject) {

        let peoplePicker = CNContactPickerViewController()

        peoplePicker.delegate = self

        self.present(peoplePicker, animated: true, completion: nil)
    }

CNContactPickerDelegate 方法

func contactPicker(picker: CNContactPickerViewController, didSelectContacts contacts: [CNContact]){
        contacts.forEach { contact in
            for number in contact.phoneNumbers {
                let phoneNumber = number.value as! CNPhoneNumber
                print("number is = \(phoneNumber)")
            }
        }
    }

func contactPickerDidCancel(picker: CNContactPickerViewController) {
    print("Cancel Contact Picker")
}

CNContactPickerDelegate 的方法在 Swift 3 中更改如下。

func contactPicker(_ picker: CNContactPickerViewController, didSelect contacts: [CNContact]) {
    //your code
}

func contactPickerDidCancel(_ picker: CNContactPickerViewController) {
    //your code
}

对于 CNContactPickerDelegate 的其他方法,请检查 Apple Documentation