獲取通訊錄-ContactsUI(swift)

獲取通訊錄-ContactsUI(swift)

  1. 導入框架

    import ContactsUI
    
  2. 實現步驟及代碼

    override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
    
    if #available(iOS 9.0, *) {
        // 1. 創建聯系人選擇控制器啊
        let vc = CNContactPickerViewController()
    
        // 1.1 設置代理, 接收用戶的點擊
        vc.delegate = self
    
        // 2. 彈出控制器
        presentViewController(vc, animated: true, completion: nil)
    } else {
        // Fallback on earlier versions
    }
    

}

// MARK: - CNContactPickerDelegate
extension ViewController: CNContactPickerDelegate {

    // 取消選中時調用
    func contactPickerDidCancel(picker: CNContactPickerViewController) {
        print("取消")
    }

    // 選擇某個聯系人
    func contactPicker(picker: CNContactPickerViewController, didSelectContact contact: CNContact) {

    }

    // 選擇某個聯系人 某個屬性
    //
    func contactPicker(picker: CNContactPickerViewController, didSelectContactProperty contactProperty: CNContactProperty) {

    }

    // 選擇多個聯系人
    func contactPicker(picker: CNContactPickerViewController, didSelectContacts contacts: [CNContact]) {

        for contact in contacts {
            let name = contact.familyName
            print(name)

            let phones = contact.phoneNumbers
            for phone in phones {

                let label = phone.label
                let value = phone.value as! CNPhoneNumber
                print(label, value.stringValue)

            }
        }
    }
    //    // 選擇一個聯系人多個屬性
    //    func contactPicker(picker: CNContactPickerViewController, didSelectContactProperties contactProperties: [CNContactProperty]) {
    //
    //    }
```
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容