2016-10-06 1 views
8

Actuellement je développe mon premier iOS App et je suis un peu lent et grossier sur le code (il est si étrange et différent de java) et, si cela était le seul problème, avec la nouvelle mise à jour, Xcode rend mon code fou. Je pense que je résolu la plupart des questions, mais ...XCode8 swift3 - Problèmes avec la liste des contacts ouverts et récupérer des données par clic

Avant, sur l'un des écrans, l'application a ouvert un carnet d'adresses et de laisser l'utilisateur clique sur un; lorsque le clic a été fait, la liste de contacts se ferme et les données de ce contact ont été récupérées sur le contrôleur. Maintenant, si l'utilisateur clique sur un contact, plus d'informations sont affichées mais toute information sort du journal de la console.

J'essaie tout ce que je trouve sur internet et je ne sais pas pourquoi ça ne marche pas. Avant, j'utilise Addressbook (ou quelque chose comme ça) mais j'ai déjà essayé avec CNContact.

C'est le code du bouton

@IBAction func addNewContactOnClick(_ sender: AnyObject) { 

     let peoplePicker = CNContactPickerViewController() 

     peoplePicker.delegate = self 

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

méthodes 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") 
} 

Répondre

8

Méthodes de CNContactPickerDelegate est modifiée dans Swift 3 comme ci-dessous.

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

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

Pour d'autres méthodes de contrôle CNContactPickerDelegateApple Documentation.

+0

Merci. Maintenant, je ne dois récupérer les données que je veux et, enfin, ce sera à nouveau travailler ... – Izahal

+0

Bienvenue compagnon :) –